home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 June: Reference Library / Dev.CD Jun 94.toast / Periodicals / develop / develop Issue 13 / develop 13 / develop 13
Encoding:
Text File  |  1994-04-26  |  3.4 MB  |  7,440 lines  |  [ONLN/HLX2]

Text Truncated. Only the first 1MB is shown below. Download the file for the complete contents.
  1. developThe Apple Technical Journal    ASYNCHRONOUS ROUTINESON THE MACINTOSHINSIDE QUICKTIME ANDCOMPONENT-BASED MANAGERSMACINTOSH DEBUGGING:THE BELLY OF THE BEASTREVISITEDADVENTURES INCOLOR PRINTINGDEVICELOOP MEETS THEINTERFACE DESIGNERLOOKING AHEAD TOPRINTING IN QUICKDRAW GXTHE PALETTE MANAGER WAYKON & BAL’S PUZZLE PAGEMACINTOSH Q & ANEW QUICKTIME COLUMN:TOP 10 QUICKTIME TIPSIssue 13   March 1993    Apple Computer, Inc.E D I T O R I A L  S T A F FEditor-in-Cheek  Caroline RoseTechnical Buckstopper  Dave JohnsonOur Boss  Greg JoswiakHis Boss  David KrathwohlReview Board  Pete (“Luke”) Alexander, Neil Day, C. K. Haun, Jim Reekes, Bryan K. (“Beaker”) Ressler, Larry Rosenstein, Andy Shebanow, Gregg WilliamsManaging Editor  Monica MeffertAssistant Managing Editor  Cynthia JasperContributing Editors  Lorraine Anderson, Geta Carlson, Toni Haskell, Judy Helfand, Rilla ReynoldsIndexer  Ira KleinbergA R T  &  P R O D U C T I O NProduction Manager  Hartley LesserArt Director  Diane WilcoxTechnical Illustration  Dave Olmos, John RyanFormatting  Forbes Mill PressPrinting  Wolfer Printing Company, Inc.Film Preparation  Aptos Post, Inc.Production  PrePress AssemblyPhotography  Sharon Beals, Lisa Jongewaard, Tom SandbornOnline Production  Karen Brady    Mark Jenkins of Rucker Huggins created this beautiful image depicting asynchronous routines by synchronizing four graphics applications: Adobe Photoshop, Adobe Illustrator, Ray Dream Designer, and Fractal Design Painter.develop, The Apple Technical Journal, is a quarterly publication of Apple Computer’s Developer Support Information  group.The Developer CD Series disc for March 1993 or later contains this issue and all back issues of develop along with the code that the articles describe. The develop issues and code are also available on AppleLink and via anonymous ftp on ftp.apple.com.        EDITORIAL    Documentation matters.   2    LETTERS    Apple DocViewer queries. What’s on your mind?   4    ARTICLES    Asynchronous Routines on the Macintosh  by Jim Luther   How to avoid the pitfalls of calling routines asynchronously.   5        Inside QuickTime and Component-Based Managers   by Bill Guschwan   Useful debugging and tracing techniques for QuickTime and the Component Manager.   34        Macintosh Debugging: The Belly of the Beast Revisited  by Fred Huxham and Greg Marriott   A supplement to the Belly of the Beast debugging article in Issue 8: four new tools explained.   54        Adventures in Color Printing  by Dave Hersey   A general strategy for printing color images that ensures the best possible quality.   64        DeviceLoop Meets the Interface Designer  by John Powers   This little-known System 7 routine can help you deal with multiple screen environments.   97    COLUMNS    Somewhere in QuickTime: Top 10 QuickTime Tips  by John Wang   The first installment of a new column on QuickTime: hot tips from the masters.   31        Print Hints: Looking Ahead to QuickDraw GX  by Pete (“Luke”) Alexander   Some things you should be aware of involving QuickDraw GX and its effect on printing.   52        The Veteran Neophyte: Tower of Babble  by Dave Johnson   Programming languages are just like natural languages, only different.  61        Graphical Truffles: The Palette Manager Way  by Edgar Lee and Forrest Tanaka   The Palette Manager need not be a mystery. Here’s the scoop.  91        KON & BAL’s Puzzle Page: Booting Blues  by Konstantin Othmer and Bruce Leak   Yet another elusive crasher bug that you’ll never guess in a million years.   118    Q & A    Macintosh Q & A   Apple’s Developer Support Center answers your product development questions.   104    INDEX    122EDITORIALCAROLINE ROSEDear Readers,In May of last year, I schmoozed with a lot of developers at Apple’s Worldwide Developer’s Conference, and one of the subjects that came up was documentation. I expressed my ideas on this subject somewhat hesitantly, because I thought the truths I was spouting were all pretty obvious, but I was surprised to find that several developers seemed enlightened by them and even suggested this as a topic for a develop editorial. So here goes.But first, some motivation. If you’re one of those developers who think no one reads manuals anyway, has it occurred to you that this might be a self-fulfilling prophecy? If manuals were better, maybe people would read them. Also, customers who do never read the manual will never learn the full power of your product (probably not every feature is self-explanatory) and will be that much quicker to move on when someone shows them the great things a rival product can do. More likely, people glance at the manual to get started and then thumb through it later when they want to explore certain features.Also keep in mind that a shoddy manual will be seen as a reflection of the product as a whole: “If this is the best they could do on the manual, how good can their software be?” Don’t fool yourself that only writers or editors will criticize a poorly done manual; any reader who has trouble learning from it will complain, and not just to themselves. While there are times when consistency may be the hobgoblin of small minds, it’s often the case that inconsistent presentation or terminology will confuse readers and have them throwing your manual down in disgust and thinking your product is more complicated than it really is. And people who do know things like the difference between “its” and “it’s” will wonder how well you debugged your code if you couldn’t find mistakes like this in your manual. Basically, you won’t look like a class act.I’ll state the following points with user documentation in mind, though most of them also apply to technical documentation for developers. Some points may be useful only to small companies, but there should be something here for everyone.•    Get a technical writer to write your documentation. Don’t do it yourself—and try to talk the CEO or VP of Marketing out of doing it. Contrary to many people’s opinions, writing a manual is    not something any smart person can do; it’s a skill like any other. Most likely you are no more qualified to write the documentation than a writer is qualified to write your code. •    Look over a relevant writing sample from your prospective writer. Awards, certificates, and years of experience go only so far: nothing will tell you whether you’ll get a good manual as much as looking at past work. Ask how the material for the sample was gathered, who else contributed to it, and how heavily it was edited.•    Get the writer started early in the process — long before the feature set is frozen. Writers provide a valuable perspective of your product, not unlike that of product management. They’ll help with the design of the product, telling you what features don’t fit in with other ones and pointing out loopholes, inconsistencies, and other Bad Things. And they’re typically excellent bug finders.•    Have the documentation edited by an editor. Unless they also happen to be editors, writers need their work checked like anyone else — and an electronic spelling or grammar check (while a good start) isn’t enough.•    Test the result on users, after your product ships if not sooner (you can revise the documentation for the next printing). And don’t be defensive: if only one out of ten “testers” turns up a particular problem, it may mean that 10% of your user base will have the same problem. Judge no misunderstanding as stupid; they’re all valid, no matter how much you may disagree with them.I could go on forever, but that’s enough for now. Please make my day and let me know if you got anything of value out of this. Or criticize it if you like; I can use the practice in not being defensive.Caroline RoseEditorLETTERSTECH NOTES: WORD IS OUTWhy are the Tech Notes in Microsoft Word documents? Are you assuming all developers have Microsoft Word? I don’t think this is a good assumption. Developers who don’t have Microsoft Word would be required to either purchase it or get an illegal copy. Or I suppose they might be able to use their favorite word processor and convert the Tech Notes if such converters exist.Big developers may have the capital to purchase Microsoft Word but small or starting developers may not, especially those enthusiastic and creative programmers in school. It would be a shame to force them to get an illegal copy of Microsoft Word so that they could learn the same wonderful magic tricks that others get from the Tech Notes.Is it possible to produce the Tech Notes in a minimal text editor such as TeachText or DocMaker? Or better yet, why not use Apple DocViewer like the New Inside Macintosh documents?— Hoon ImThis is a timely question, as the format of Tech Notes on the CD has changed. But first, some background.There are several reasons why we distributed Tech Notes as Microsoft Word documents. Internally we use Microsoft Word as the authoring tool for Tech Notes because of its relatively powerful formatting abilities and ease of use. It also turns out that most word processing packages, such as MacWrite® II, have translators that do a reasonable job on Microsoft Word documents, so most people have access to the information. We’re firmly against pirating software!     Also, our primary commitment has been to providing the highest quality technical material possible; rather than focusing on format conversion, we chose to improve the overall content and organization of the Tech Notes. Only then were we ready to turn our full attention to the question of format.You mention Apple DocViewer as a possible alternative format — we have in fact converted the Tech Notes into Apple DocViewer format (take a look on the CD). Over time this will be improved to provide better indexing and cross-reference facilities — whose absence we’ve been painfully aware of in the Microsoft Word format.— Neil Day, Tech Note Pooh-BahLICENSING DOCVIEWERWe are a long-time Macintosh educational software developer. We’ve traditionally converted our printed documentation to HyperCard® for on-line use by our customers. I wondered to whom we should speak to request developer licensing of Apple DocViewer?—Rhett TindallApple DocViewer documents are sourced from several word processors. These documents must be processed in another application before they become DocViewer documents. This application is currently not of commercial quality and is for Apple internal use only. However, we’re in the process of investigating whether to refine the application and make it available outside Apple. This process may take some time and may not result in providing the software to external parties. Please stay tuned!—In-Yung Kim    ASYNCHRONOUS ROUTINES ON THE MACINTOSHJIM LUTHERThe Macintosh has always supported asynchronous calls to many parts of its operating system. This article expands on the information found in Inside Macintosh by telling when why, and how you should use functions asynchronously on the Macintosh. It includes debugging hints and solutions to problems commonly encountered when asynchronous calls are used.When calling a routine synchronously, your program passes control to the routine and doesn’t continue execution until the routine’s work has completed (either successfully or unsuccessfully). This would be like giving someone a task and then watching them perform that task. Although the task is eventually completed, you don’t get anything done while you watch. On the other hand, when calling a routine asynchronously, your program passes control to the routine, and the program’s request is placed in a queue or, if the queue is empty, executed immediately; in either case, control returns to the program very quickly, even if the request can’t be executed until later. The system processes any queued requests while your program is free to continue execution, then interrupts you later when the request is completed. This is like giving someone a task and going back to your work while they finish the task. In most cases, it results in more work being accomplished during the same period of time. Figure 1 illustrates the difference between synchronous and asynchronous calls.One situation in which you shouldn’t use synchronous calls is when you don’t know how long it may take for the operation to complete, as with the PPC Toolbox’s PPCInform function, for example. PPCInform won’t complete until another program attempts to start a session with your program. This could happen immediately, but the chances are far greater that it won’t. If PPCInform is called synchronously, it appears that the system has locked up because the user won’t get control back until the call completes. If you call PPCInform asynchronously, it doesn’t matter if the function doesn’t complete for minutes, hours, or even days — your program (and the rest of the system) can continue normally.Figure 1How Synchronous and Asynchronous Calls WorkYou should also avoid synchronous calls when you can’t know the state of the service you’ve asked for. Program code that’s part of a completion routine, VBL task, Time Manager task, Deferred Task Manager task, or interrupt handler is executed at what’s commonly called interrupt time. Synchronous calls made at interrupt time often result in deadlock. (See “Deadlock.”) An asynchronous call can solve the problem: if the service you call is busy handling another request, your asynchronous request is queued and your program code can give up control (that is, the completion routine or task your code is part of can end), letting the service complete the current request and eventually process your request.Routines called synchronously are allowed to move memory, while routines called asynchronously purposely avoid moving memory so that they can be called at interrupt time. For example, the File Manager’s PBHOpen routine may move memory when called synchronously, but won’t when called asynchronously. If your code is executing in an environment where memory can’t be moved (for example, at interrupt time), you must call routines asynchronously to ensure that they don’t move memory.At this time, the various lists in Inside Macintosh of “Routines That May Move or Purge Memory,” “Routines and Their Memory Behavior,” and “Routines ThatDEADLOCKBY GORDON SHERIDAN    Deadlock is a state in which each of two or more processes is waiting for one of the other processes to release some resource necessary for its completion. The resource may be a file, a global variable, or even the CPU. The process could, for example, be an application’s main event loop or a Time Manager task.When deadlock occurs on the Macintosh, usually at least one of the processes is executing as the result of an interrupt. VBL tasks, Time Manager tasks, Deferred Task Manager tasks, completion routines, and interrupt handlers can all interrupt an application’s main thread of execution. When the interrupted process is using a resource that the interrupting process needs, the processes are deadlocked.For example, suppose a Time Manager task periodically writes data to a file by making a synchronous Write request, and an application reads the data from its main event loop. Depending on the frequency of the task and the activity level of the File Manager, the Time Manager task may often write successfully. Inevitably, however,     the Time Manager task will interrupt the application’s Read request and deadlock will occur.Because the File Manager processes only one request at a time, any subsequent requests must wait for the current request to complete. In this case, the synchronous request made by the Time Manager task must wait for the application’s Read request to complete before its Write request will be processed. Unfortunately, the File Manager must wait for the Time Manager task to complete before it can resume execution. Each process is now waiting for the other to complete, and they’ll continue to wait forever.Synchronous requests at interrupt time tend to produce deadlock, because the call is queued for processing and then the CPU sits and spins, waiting for an interrupt to occur, which signals that the request has been completed. If interrupts are turned off, or if a previous pending request can’t finish because it’s waiting to resume execution after the interrupt, the CPU will wait patiently (and eternally) for the request to finish — until you yank the power cord from the wall.    Should Not Be Called From Within an Interrupt” are either incomplete or incorrect and can’t be trusted entirely. The reasons why a system routine can’t be called at interrupt time include: the routine may move memory; the routine may cause a deadlock condition; the routine is not reentrant. This article shows how to postpone most system calls until a safe time. You’re encouraged to call as few system routines at interrupt time as possible. The routines discussed in this article are low-level calls to the File Manager, the Device Manager (including AppleTalk driver, Serial Driver, and disk driver calls), and the PPC Toolbox. All these routines take the following form:FUNCTION SomeFunction (pbPtr: aParamBlockPtr; async: BOOLEAN): OSErr;Routines of this form are executed synchronously when async = FALSE or asynchronously when async = TRUE. Determining asynchronous call completionYour program can use two methods to determine when an asynchronous call has completed: periodically poll for completion (check the ioResult field of the parameter block passed to the function) or use a completion routine. Both methods enable your program to continue with other operations while waiting for an asynchronous call to complete.Polling for completionPolling for completion is a simple method to use when you have only one or two asynchronous calls outstanding at a time. It’s like giving someone a task and calling them periodically to see if they’ve completed it. When your program fills in the parameter block to pass to the function, it sets the ioCompletion field to NIL, indicating that there’s no completion routine. Then, after calling the function asynchronously, your program only needs to poll the value of the ioResult field of the parameter block passed to the function and wait for it to change: •    A positive value indicates the call is either still queued or in the process of executing.•    A value less than or equal to 0 (noErr) indicates the call has completed (either with or without an error condition).Polling is usually straightforward and simple to implement, which makes the code used to implement polling easy to debug. The following code shows an asynchronous PPCInform call and how to poll for its completion:PROCEDURE MyPPCInform;    VAR        err: OSErr;    { Error conditions are ignored in this procedure }                            { because they are caught in PollForCompletion. }BEGIN    gPPCParamBlock.informParam.ioCompletion := NIL;    gPPCParamBlock.informParam.portRefNum := gPortRefNum;    gPPCParamBlock.informParam.autoAccept := TRUE;    gPPCParamBlock.informParam.portName := @gPPCPort;    gPPCParamBlock.informParam.locationName := @gLocationName;    gPPCParamBlock.informParam.userName := @gUserName;    err := PPCInform(PPCInformPBPtr(@gPPCParamBlock), TRUE);END;In this code, MyPPCInform calls the PPCInform function asynchronously with no completion routine (ioCompletion is NIL). The program can then continue to do other things while periodically calling the PollForCompletion procedure to find out when the asynchronous call completes.PROCEDURE PollForCompletion;BEGIN    IF gPPCParamBlock.informParam.ioResult <= noErr THEN        BEGIN    { The call has completed. }            IF gPPCParamBlock.informParam.ioResult = noErr THEN                BEGIN                    { The call completed successfully. }                END            ELSE                BEGIN                    { The call failed, handle the error. }                END;        END;END;PollForCompletion checks the value of the ioResult field to find out whether PPCInform has completed. If the call has completed, PollForCompletion checks for an arror condition and then performs an appropriate action.There are three important things to note in this example of polling for completion: •    The parameter block passed to PPCInform, gPPCParamBlock, is a program global variable. Since the parameter block passed to an asynchronous call is owned by the system until the call completes, the parameter block must not be declared as a local variable within the routine that makes the asynchronous call. The memory used by local variables is released to the stack when a routine ends, and if that part of the stack gets reused, the parameter block, which could still be part of an operating system queue, can get trashed, causing either unexpected results or a system crash. Always declare parameter blocks globally or as nonrelocatable objects in the heap.•    Calls to PollForCompletion must be made from a program loop that’s not executed completely at interrupt time. This prevents deadlock. You don’t necessarily have to poll from an application’s event loop (which is executed at noninterrupt time), but if you poll from code that executes at interrupt time, that code must give up control between polls.•    PollForCompletion checks the ioResult field of the parameter block to determine whether PPCInform completed and, if it completed, to see if it completed successfully.One drawback to polling for completion is latency. When the asynchronous routine completes its job, your program won’t know it until the next time you poll. This can be wasted time. For example, assume you give someone a task and ask them if they’re done (poll) only once a day: if they finish the task after an hour, you won’tFUNCTION RESULTS AND FUNCTION COMPLETION BY SCOTT BOYD AND JIM LUTHER     Not all function results are equal. Ignore some, pay attention to others. Ignore function results from asynchronous File Manager and PPC Toolbox calls. They contain no useful information. To get useful result information, wait for the call to complete, then check ioResult or register D0; both contain the result.Both the File Manager and the PPC Toolbox will always call your completion routine if you specified one. If you didn’t supply one, and instead are polling, test ioResult in your parameter block. The call has completed if ioResult is less than or equal to noErr.     Don’t ignore function results from asynchronous Device Manager calls (for example, AppleTalk driver, Serial Driver, and disk driver calls). The function result tells you whether the Device Manager successfully delivered your request to the device driver. Success is indicated by noErr; any other value indicates failure.The system calls your completion routine only if the Device Manager successfully delivered your request to the driver. On completion, check whether your call succeeded by looking in ioResult or register D0.    they’ve completed the task until 23 hours later (a 23-hour latency). To avoid latency, use completion routines instead of polling ioResult to find out when a routine completes.Using Completion routinesMaking an asynchronous call with a completion routine is only slightly more complex than polling for completion. A completion routine is a procedure that’s called as soon as the asynchronous function completes its task. When your program fills in the parameter block to pass to the function, it sets the ioCompletion field to point to the completion routine. Then, after calling the function asynchronously, your program can continue. When the function completes, the system interrupts the program that’s running and the completion routine is executed. (There are some special things you need to know about function results to use this model; see “Function Results and Function Completion.”)Since the completion routine is executed as soon as the function’s task is complete, your program finds out about completion immediately and can start processing the results of the function. Using a completion routine is like giving someone a task and then asking them to call you as soon as they’ve completed it.Because a completion routine may be called at interrupt time, it can’t assume things that most application code can. When a completion routine for an asynchronous function gets control, the system is in the following state:•    On entry, register A0 points to the parameter block used to make the asynchronous call.•    Your program again owns the parameter block used to make the asynchronous call, which means you can reuse the parameter block to make another asynchronous call (see the section “Call Chaining” later in this article).•    Both register D0 and ioResult in the parameter block contain the result status from the function call.•    For completion routines called by the File Manager or Device Manager, the A5 world is undefined and must be restored before the completion routine uses any application global variables.Since completion routines execute at interrupt time, they must follow these rules:•    They must preserve all registers except A0, A1, and D0-D2.•    They can’t call routines that can directly or indirectly move memory, and they can’t depend on the validity of handles to unlocked blocks.•    They shouldn’t perform time-consuming tasks, because interrupts may be disabled. As pointed out in the Macintosh Technical Note “NuBus™ Interrupt Latency (I Was a Teenage DMA Junkie),” disabling interrupts and taking over the machine for long periods of time “almost always results in a sluggish user interface, something which is not usually well received by the user.” Some ways to defer time-consuming tasks are shown later in this article.•    They can’t make synchronous calls to device drivers, the File Manager, or the PPC Toolbox for the reasons given earlier.PPC Toolbox completion routines. The PPC Toolbox simplifies the job of writing completion routines. When a PPC Toolbox function is called asynchronously, the current value of register A5 is stored. When the completion routine for that call is executed by the PPC Toolbox, the stored A5 value is restored and the parameter block pointer used to make the call is passed as the input parameter to the completion routine.A completion routine called by the PPC Toolbox has this format in Pascal:PROCEDURE MyCompletionRoutine (pbPtr: PPCParamBlockPtr);PPC Toolbox completion routines are still called at interrupt time and so must follow the rules of execution at interrupt time.The following code shows an asynchronous PPCInform call and its completion routine.PROCEDURE InformComplete (pbPtr: PPCParamBlockPtr);BEGIN    IF pbPtr^.informParam.ioResult = noErr THEN        BEGIN            { The PPCInform call completed successfully. }        END    ELSE        BEGIN            { The PPCInform call failed; handle the error. }        END;END;PROCEDURE DoPPCInform;    VAR        err: OSErr;    { Error conditions are ignored in this procedure }                            { because they are caught in InformComplete. }BEGIN    gPPCParamBlock.informParam.ioCompletion := @InformComplete;    gPPCParamBlock.informParam.portRefNum := gPortRefNum;    gPPCParamBlock.informParam.autoAccept := TRUE;    gPPCParamBlock.informParam.portName := @gPPCPort;    gPPCParamBlock.informParam.locationName := @gLocationName;    gPPCParamBlock.informParam.userName := @gUserName;    err := PPCInform(PPCInformPBPtr(@gPPCParamBlock), TRUE);END;In this code, DoPPCInform calls PPCInform asynchronously with a completion routine (ioCompletion contains a pointer to InformComplete). The program can then continue to do other things. When PPCInform completes, control is passed to InformComplete with a pointer to gPPCParamBlock. InformComplete checks the result returned by PPCInform and then performs an appropriate action. Here are the important things to note in this example of a PPC Toolbox completion routine:•    The parameter block gPPCParamBlock is declared globally for the reasons given earlier in the section “Polling for Completion.” •    InformComplete checks the ioResult field of the parameter block to determine whether PPCInform completed successfully.File Manager and Device Manager completion routines in high-level languages. File Manager and Device Manager completion routines written in ahigh-level language such as Pascal or C are more complicated than PPC Toolbox completion routines. They must take additional steps to get the value in register A0 and, if program global variables will be used, restore register A5 to the application’s A5 value. The reason for this is that File Manager and Device Manager completion routines are called with the pointer to the call’s parameter block in register A0 and with the A5 world undefined.In most high-level languages, registers A0, A1, and D0-D2 are considered scratch registers by the compiler and aren’t preserved across routine calls. For this reason, you should not depend on register values as input parameters to routines written in a high-level language. Examples of completion routines in Inside Macintosh and in several Macintosh Technical Notes use short inline assembly routines to retrieve the value of register A0, in the following manner: FUNCTION GetPBPtr: ParmBlkPtr;{ Return the pointer value in register A0. }INLINE $2E88;    { MOVE.L A0,(A7) }PROCEDURE MyCompletionRoutine;{ This procedure gets called when an asynchronous call completes. }    VAR        pbPtr: ParmBlkPtr;BEGIN    pbPtr := GetPBPtr;    { Retrieve the value in register A0. }    DoWork(pbPtr);        { Call another routine to do the actual work. }END;Although the GetPBPtr inline assembly routine works with today’s compilers, be careful, because register A0 could be used by the compiler for some other purpose before the statement with the inline assembly code is executed. As shown in the previous example, you can minimize the chances of the compiler using a register before you retrieve its value by retrieving the register value in the completion routine’s first statement and then doing as little as possible within the completion routine (call another routine to do any additional work).The safest way to use register values as input parameters to completion routines written in a high-level language is to use a completion routine written in assembly language that calls a routine written in a high-level language. The following record type allows File Manager and Device Manager completion routines to be written in high-level languages such as C or Pascal with only one small assembly language routine. This record also holds the application’s A5 value so that the completion routine can restore A5 and application globals can be accessed from within the completion routine.TYPE    extendedPBPtr = ^extendedPB;    extendedPB = RECORD            ourA5:             LONGINT;        { Application's A5 }            ourCompletion: ProcPtr;        { Address of the completion routine }                                                    { written in a high-level language }            pb:             ParamBlockRec;    { Parameter block used to make call }        END;PreCompletion, a small assembly language routine, is used as the completion routine for all File Manager and Device Manager asynchronous calls (PreCompletion comes preassembled and ready to link with your C or Pascal code on the Developer CD Series disc). PreCompletion preserves the A5 register, sets A5 to the application’s A5, calls the designated Pascal completion routine with a pointer to the parameter block used to make the asynchronous call, and then restores the A5 register:PreCompletion    PROC    EXPORT        LINK        A6,#0                ; Link for the debugger.        MOVEM.L    A5,-(SP)            ; Preserve A5 register.        MOVE.L    A0,-(SP)            ; Pass PB pointer as the parameter.        MOVE.L    -8(A0),A5            ; Set A5 to passed value (ourA5).        MOVE.L    -4(A0),A0            ; A0 = real completion routine address.        JSR        (A0)                    ; Transfer control to ourCompletion.        MOVEM.L    (SP)+,A5            ; Restore A5 register.        UNLK        A6                        ; Unlink.        RTS                                ; Return.        STRING    ASIS        DC.B        $8D,'PreCompletion'    ; The debugger string.        DC.W        $0000        STRING    PASCAL        ENDP        ENDBefore an application makes an asynchronous call, it initializes the extendedPB record with the application’s A5 and the address of the high-level language’s completion routine. The ioCompletion field of the extendedPB record’s parameter block is initialized with the address of PreCompletion:myExtPB.ourA5 := SetCurrentA5;myExtPB.ourCompletion := @MyCompletionRoutine;myExtPB.pb.ioCompletion := @PreCompletion;The high-level language’s completion routine called by PreCompletion has this format in Pascal:PROCEDURE MyCompletionRoutine (pbPtr: ParmBlkPtr);When MyCompletionRoutine is called, register A5 has been set to the stored application A5 and pbPtr points to the parameter block (within the extended parameter block) used to make the asynchronous call.The rest of this article shows how to use asynchronous calls and completion routines to your program’s advantage and describes various techniques for working around the limitations imposed on completion routines.The Big Three TechniquesThere are lots of techniques you can use when working with asynchronous calls. Most are useful for solving only one or two programming problems. This section describes the three most useful techniques — the use of operating system queues, call chaining, and extended parameter blocks.Operating System QueuesAfter reading the description of operating system queues in Inside Macintosh Volume II, you might assume they’re for use only by the operating system. Wrong! Any program can create an OS queue for its own purposes. OS queues are very useful in interrupt-time code such as completion routines, because the two routines that manipulate OS queues, Enqueue and Dequeue, have the following characteristics:•    They disable all interrupts while they update the queue. This is very important because it prevents race conditions between interrupt and noninterrupt code accessing the queue. (See “Race Conditions and OS Queues.”)•    They can be called at interrupt time, because they don’t move memory — they only manipulate a linked list of queue elements.•    They’re very fast and efficient, so they won’t be time-consuming operations in your completion routines.An OS queue owned by your program can hold queue elements defined by the system or queue elements of your own design. A queue element is a record that starts with two fields, qLink and qType. The qLink field is a QElemPtr that links queue elements together while they’re in an OS queue. The qType field is an integer value that identifies the queue element type. In OS queues owned by your program, you may not need to use the qType field unless the OS queue can hold more than one type of queue element. Here’s how the system defines a queue element:QElem = RECORD        qLink:    QElemPtr;    { Link to next queue element. }        qType:    INTEGER;    { Queue element type. }        { Add your data fields here. }    END;RACE CONDITIONS AND OS QUEUES    When two or more processes share the same data, you must be careful to avoid race conditions. A race condition exists when data is simultaneously accessed by two processes. On the Macintosh, the two processes are typically program code running with interrupts enabled and code executing at interrupt time (such as a completion routine).To prevent race conditions, you must have a method of determining ownership of the shared data. A shared global flag isn’t safe because there can be a race condition with the flag. For example, the following code can’t be used to claim ownership of a recond.    { This can cause a race condition. }    IF gRecFree THEN { Is record in use? }        BEGIN { It wasn't when we checked. }            gRecFree := FALSE;    { Claim record. }            { Use record. }            gRecFree := TRUE;    { Release record. }        END;    A race condition can occur in this code because there’s a small window of time between when the IF statement’s expression is evaluated and when the record is claimed. During this time the program can be interrupted. The only way to prevent race conditions is to make the process of checking for and claiming ownership a step that can’t be interrupted.OS queues and the Operating System Utility routines Enqueue and Dequeue provide a safe way to claim ownership of data. Enqueue and Dequeue briefly disable interrupts while manipulating the queue, so they’re safe from race conditions. To use an OS queue to protect data from race conditions, make the data part of a queue element and put the queue element into an OS queue. Whenever any part of the program wants to manipulate data in the queue element, it attempts to remove the queue element from the OS queue. If the queue element isn’t in the queue and so can’t be removed, that means another process currently has ownership of the queue element and the data within it.    The following record types are some of the system-defined queue elements: ParamBlockRec, CInfoPBRec, DTPBRec, HParamBlockRec, FCBPBRec, WDPBRec, CMovePBRec, MPPParamBlock, ATPParamBlock, XPPParamBlock, DSPParamBlock, EParamBlock, PPCParamBlockRec, TMTask, DeferredTask, and VBLTask.To use an OS queue in your program, you need to allocate a queue header (QHdr) variable and possibly define your own queue element type:TYPE    { Define a queue element type. }    MyQElemRecPtr = ^MyQElemRec;    MyQElemRec = RECORD            qLink:    QElemPtr;            qType:    INTEGER;            myData:    myDataType;    { Put any data fields you want here. }        END;VAR    { Allocate a queue element and a queue header. }    myQElem:    MyQElemRec;    myOSQueueHdr:    QHdr;You must initialize the queue header before it’s used by setting its qHead and qTail fields to NIL:{ Initialize the OS queue. }myOSQueueHdr.qHead := NIL;myOSQueueHdr.qTail := NIL;The queue element can then be added to the OS queue:{ Add myQElem to the queue. }Enqueue(QElemPtr(@myQElem), @myOSQueueHdr);This code shows how to remove a queue element (in this example, the first item in the queue) from an OS queue before using it:VAR    myQElemPtr: MyQElemRecPtr;myQElemPtr := MyQElemRecPtr(myOSQueueHdr.qHead);IF myQElemPtr <> NIL THEN    { Make sure we have a queue element. }    BEGIN        IF Dequeue(QElemPtr(myQElemPtr), @myOSQueueHdr) = noErr THEN            BEGIN                { We successfully removed the queue element from the queue, }                { so we can use myQElemPtr^.myData. }                { In this example, we'll put the queue element back in }                { the queue when we're done with it. }                Enqueue(QElemPtr(myQElemPtr), @myOSQueueHdr);            END        ELSE            BEGIN                { Someone else just claimed the queue element between the }                { two IF statements and we just avoided a race condition! }                { Try again later. }            END;    END;OS queues owned by your program can be used for many purposes, including these:•    Completion routines can schedule work to be done by your application’s event loop by putting requests into an OS queue.•    Extra buffers or parameter blocks needed by completion routines can be put into an OS queue by code called from the program’s event loop. These buffers or parameter blocks can be safely claimed and used by code running at interrupt time.•    Completion routines can schedule the processing of a completed call by putting the parameter block used to make the call into an OS queue. This is useful when the processing might move memory or take too much time and so can’t be performed in the completion routine. •    Data accessed and manipulated by both interrupt code and noninterrupt code can be protected from race conditions if it’s stored in a queue element and the Dequeue and Enqueue routines are used to claim and release ownership of the data from an OS queue (as described earlier in “Race Conditions and OS Queues”).Call ChainingWhen a multistep operation is performed via multiple asynchronous calls with completion routines, it’s called call chaining. Each asynchronous call’s completion routine reuses the parameter block passed to the completion routine to make the next asynchronous call. Call chaining from completion routines allows your program to start the next step in a multistep operation with no latency (see Figure 2).To use call chaining, you must design your call chain; that is, you must decide the order of the asynchronous calls you want to make. For each completion routine, determine what step should be taken if the previous call completed successfully with no error condition and what step should be taken if the previous call completed with an error. A chained call sequence may have several end points or breaks in the chain, depending on what you’re trying to accomplish and what conditions are encountered along the way. For example, you may not want to make another asynchronous call because an error condition occurred, because the next step your program needs to take involves a call that can’t be made at interrupt time, or because all steps were completed successfully. The easiest way for your chained call sequence to pass control back to noninterrupt code is through an OS queue. This technique is shown in the section “Putting the Big Three Together.”Extending parameter blocksUnless you do a little extra work, a completion routine is somewhat isolated from the rest of your program. The only data accessible to a completion routine when it executes is the parameter block used to make the asynchronous call and, if you preserve and restore A5, the program’s global variables. As noted before, you must be careful to avoid race conditions when accessing global variables.  Figure 2Call ChainingYou can extend a parameter block by attaching your own data to the end of a parameter block, like this:TYPE    myPBRecPtr = ^myPBRec;    myPBRec = RECORD            pb:        ParamBlockRec;            myData:    myDataType;    { Put any data type you want here. }        END;From within a completion routine, using the extended fields is easy:IF thePBRecPtr^.pb.ioResult = noErr THEN    thePBRecPtr^.myData := kSomeValue;Extending a parameter block has several benefits for asynchronous program code:•    By extending a parameter block to include all variables used by the routine, you can reduce the amount of stack space used by completion routines.•    By keeping all data associated with a particular session in the extended parameter block, you can support multiple independent sessions.•    By putting values needed by a completion routine in an extended parameter block instead of in program global variables, you can prevent race conditions. This provides noninterrupt code and interrupt code with a safe method to communicate.Putting the Big Three TogetherNow that you know about OS queues, call chaining, and extending parameter blocks, let’s look at a simple example of how these techniques can be used together. PPC Toolbox calls, being slightly simpler, are used in this example.In the example, the program is to receive and accept a PPC session request, read some data, process the data, and then close the connection. To accomplish this, the program calls PPCInform asynchronously with a completion routine, has PPCInform’s completion routine call PPCRead asynchronously with a completion routine, and then has PPCRead’s completion routine schedule processing of the data by putting a request into an OS queue. After the data is removed from the queue and processed in the application’s main event loop, the program calls PPCClose asynchronously with a completion routine and has PPCClose’s completion routine call PPCInform again to wait for another connection.We begin with an extended PPC parameter block record that can hold all the data the program needs to access from the various procedures:CONST    kPPCIOBufSize = 1024;    { Size of the I/O buffer. }TYPE    PPCIOBuffer = ARRAY[1..kPPCIOBufSize] OF SignedByte;    PPCSessRecPtr = ^PPCSessRec;    PPCSessRec = RECORD            pb:                     PPCParamBlockRec;    { The pb must be first. }            err:                     OSErr;                    { To catch results. }            sessPortName:         PPCPortRec;            { Port name returned to }                                                                { PPCInform. }            sessLocationName: LocationNameRec;    { Location name returned }                                                                { to PPCInform. }            sessUserName:         Str32;                    { User name returned to }                                                                { PPCInform. }            buffer:                 PPCIOBuffer;            { R/W buffer used by this }                                                                { session. }        END;Next, we declare the global variables used in this example:VAR    gQuitting:     BOOLEAN;            { True when no new sessions should }                                                { be allowed. }    gPortRefNum:    PPCPortRefNum;    { PPC port reference number from }                                                { PPCOpen. }    gReadQueue:    QHdr;                { Where PPCRead parameter blocks are }                                                { scheduled to be processed. }    gDoneQueue:    QHdr;                { Where parameter blocks are put when }                                                { completion routines are done with }                                                 { them. }Several procedures are used in the example: DoPPCInform, InformComplete, ReadComplete, ProcessPPCData, EndComplete, and HandlePPCErrors. Not shown in this article is the program code for such operations as opening the PPC port, setting gQuitting to FALSE, and initializing the two OS queue headers before DoPPCInform is called.DoPPCInform simply fills in the parameter block, previously allocated by the program and passed to DoPPCInform, and calls PPCInform asynchronously with InformComplete as the completion routine. Any errors returned by PPCInform will be handled by InformComplete.PROCEDURE DoPPCInform (pbPtr: PPCSessRecPtr);BEGIN    { Call PPCInform. }    PPCInformPBPtr(pbPtr)^.ioCompletion := @InformComplete;    PPCInformPBPtr(pbPtr)^.portRefNum := gPortRefNum;    PPCInformPBPtr(pbPtr)^.autoAccept := TRUE;    PPCInformPBPtr(pbPtr)^.portName := @pbPtr^.sessPortName;    PPCInformPBPtr(pbPtr)^.locationName := @pbPtr^.sessLocationName;    PPCInformPBPtr(pbPtr)^.userName := @pbPtr^.sessUserName;    { Error conditions are ignored in this procedure because they are }    { caught in InformComplete. }    pbPtr^.err := PPCInformAsync(PPCInformPBPtr(pbPtr));    { Continued at InformComplete. }END;InformComplete is called when PPCInform completes. InformComplete first checks for errors from PPCInform. If the result is noErr, InformComplete fills in the parameter block and calls PPCRead asynchronously with ReadComplete as the completion routine. Any errors returned by PPCRead will be handled by ReadComplete. If PPCInform failed (the result is not noErr), InformComplete putsthe parameter block into gDoneQueue, where the error condition can be handled from the program’s event loop.PROCEDURE InformComplete (pbPtr: PPCSessRecPtr);BEGIN    IF PPCInformPBPtr(pbPtr)^.ioResult = noErr THEN        { The PPCInform call completed successfully. }        BEGIN            { Call PPCRead. }            PPCReadPBPtr(pbPtr)^.ioCompletion := @ReadComplete;            { We're reusing the same parameter block, so the }            { sessRefNum is already filled in. }            PPCReadPBPtr(pbPtr)^.bufferLength := kPPCIOBufSize;            PPCReadPBPtr(pbPtr)^.bufferPtr := @pbPtr^.buffer;            { Error conditions are ignored in this procedure because they }            { are caught in ReadComplete. }            PPCSessRecPtr(pbPtr)^.err := PPCReadAsync(PPCReadPBPtr(pbPtr));            { Continued at ReadComplete. }        END    ELSE        { The PPCInform call failed. Drop the parameter block in the }        { "done" queue for handling later. }        Enqueue(QElemPtr(pbPtr), @gDoneQueue);        { Dequeued by HandlePPCErrors. }END;ReadComplete is called when PPCRead completes. ReadComplete first checks for errors from PPCRead. If the result is noErr, ReadComplete puts the parameter block into gReadQueue. If PPCRead failed (the result is not noErr), ReadComplete puts the parameter block into gDoneQueue. In either case, the information queued is handled from the program’s event loop.PROCEDURE ReadComplete (pbPtr: PPCParamBlockPtr);BEGIN    IF PPCReadPBPtr(pbPtr)^.ioResult = noErr THEN        { The PPCRead call completed successfully. Drop the }        { parameter block in the "read" queue for handling later. }        Enqueue(QElemPtr(pbPtr), @gReadQueue)        { Dequeued by ProcessPPCData. }    ELSE        { The PPCRead call failed. Drop the parameter block in the }        { "done" queue for handling later. }        Enqueue(QElemPtr(pbPtr), @gDoneQueue)        { Dequeued by HandlePPCErrors. }END;ProcessPPCData is called regularly from the program’s event loop. If gReadQueue contains a parameter block, ProcessPPCData removes the parameter block from the queue and processes the data read in the PPCSessRec’s buffer. After processing the data, ProcessPPCData calls PPCEnd asynchronously with EndComplete as the completion routine. Any errors returned by PPCEnd will be handled by EndComplete.PROCEDURE ProcessPPCData;    VAR        pbPtr: PPCSessRecPtr;BEGIN    { Check for a parameter block in the queue. }    IF gReadQueue.qHead <> NIL THEN        BEGIN            { Get the PPCSessRec and remove it from the queue. }            pbPtr := PPCSessRecPtr(gReadQueue.qHead);            IF Dequeue(QElemPtr(pbPtr), @gReadQueue) = noErr THEN                BEGIN                    { Process PPCReadPBPtr(pbPtr)^.actualLength bytes of }                    { data in the data buffer, pbPtr^.buffer, here. }                    { Then call PPCEnd to end the session. }                    PPCEndPBPtr(pbPtr)^.ioCompletion := @EndComplete;                    { Error conditions are ignored in this procedure because }                    { they are caught in EndComplete. }                    pbPtr^.err := PPCEndAsync(PPCEndPBPtr(pbPtr));                    { Continued at EndComplete. }                END;        END;END;EndComplete is called when PPCEnd completes. It first checks for errors from PPCEnd. If the result is noErr, EndComplete either calls DoPPCInform to call PPCInform asynchronously again or puts the parameter block into gDoneQueue. If PPCEnd failed (the result is not noErr), EndComplete puts the parameter block into gDoneQueue. Any queued information is handled from the program’s event loop.PROCEDURE EndComplete (pbPtr: PPCParamBlockPtr);BEGIN    IF PPCEndPBPtr(pbPtr)^.ioResult = noErr THEN        BEGIN { The PPCEnd call completed successfully. }            IF NOT gQuitting THEN                { Reuse the parameter block for another PPCInform. }                DoPPCInform(PPCSessRecPtr(pbPtr))                { Continued at DoPPCInform and then InformComplete. }            ELSE                { Drop the parameter block in the "done" queue for }                { handling later. }                Enqueue(QElemPtr(pbPtr), @gDoneQueue);            { Dequeued by HandlePPCErrors. }        END    ELSE        BEGIN { The PPCEnd call failed. }            { Drop the parameter block in the "done" queue }            { for handling later. }            Enqueue(QElemPtr(pbPtr), @gDoneQueue);            { Dequeued by HandlePPCErrors. }        END;END;HandlePPCErrors is called regularly from the program’s event loop. If gDoneQueue contains any parameter blocks, HandlePPCErrors removes the parameter blocks from the queue one at a time, checks to see what PPC call failed by inspecting the csCode field of the parameter block, and then handles the error condition appropriately. If the call that failed was PPCRead or PPCWrite, HandlePPCErrors calls PPCEnd asynchronously with EndComplete as the completion routine. Any errors returned by PPCEnd will be handled by EndComplete.PROCEDURE HandlePPCErrors;    CONST    { PPC csCodes from async calls. }        ppcOpenCmd = 1;        ppcStartCmd = 2;        ppcInformCmd = 3;        ppcAcceptCmd = 4;        ppcRejectCmd = 5;        ppcWriteCmd = 6;        ppcReadCmd = 7;        ppcEndCmd = 8;        ppcCloseCmd = 9;        IPCListPortsCmd = 10;    VAR        pbPtr: PPCSessRecPtr;BEGIN    { Process any parameter blocks in the queue. }    WHILE gDoneQueue.qHead <> NIL DO        BEGIN            { Get the PPCSessRec and remove it from the queue. }            pbPtr := PPCSessRecPtr(gDoneQueue.qHead);            IF Dequeue(QElemPtr(pbPtr), @gDoneQueue) = noErr THEN                CASE PPCEndPBPtr(pbPtr)^.csCode OF                    ppcOpenCmd..ppcRejectCmd, ppcEndCmd..IPCListPortsCmd:                        { For these calls, we'll just dispose of the }                        { parameter block. }                        DisposePtr(Ptr(pbPtr));                    ppcWriteCmd, ppcReadCmd:                         BEGIN                            { We need to call PPCEnd after read or write }                            { failures to clean up after this session. }                            PPCEndPBPtr(pbPtr)^.ioCompletion := @EndComplete;                            { Error conditions are ignored in this procedure }                            { because they are caught in EndComplete. }                            pbPtr^.err := PPCEndAsync(PPCEndPBPtr(pbPtr));                            { Continued at EndComplete. }                        END;                END;        END;END;In this example of extending parameter blocks and using OS queues and call chaining, notice that asynchronous calls are chained together until an operation that can’t be accomplished at interrupt time is necessary; then the extended parameter block is put into an OS queue where the main program can access it. Very few global variables are needed because OS queues are used to hold any data the main program code needs to access. Local variables aren’t needed by the completion routines because the extended parameter block, PPCSessRec, holds everything the completion routines need.Debugging HintsHere are the top five debugging hints for writing asynchronous code.Use Debugger or DebugStr calls and a low-level debugger. Because completion routines are called by the system, usually as a result of an interrupt, source-level debuggers don’t work with completion routines. If you’re having problems with a completion routine, first look at the parameter block used to make the asynchronous call. Look both before and after the call by using a Debugger or DebugStr call just before you make the asynchronous call and again at the beginning of the completion routine (remember, register A0 points to the parameter block).Make sure parameter blocks are around for the life of the asynchronous call. The parameter block will have a whole new meaning if you forget and allocate a parameter block on the local stack, then make an asynchronous call with it, leave the current procedure or function, and reuse the stack for something new. There’s nothing the system hates more than a completely bogus parameter block. If youcheck your parameter block at completion time and the contents are different from what you expected, you’ve probably done this.Don’t reuse a parameter block that’s in use. A parameter block passed to an asynchronous call is owned by the operating system until the asynchronous call completes. If you reuse the parameter block before the asynchronous call completes, at least one of the calls made with the parameter block will fail or crash the system. This can happen if you use a parameter block once from one place in your program and then forget and use it again from somewhere else.Global parameter blocks should be avoided, because they’re easy to reuse from several places within a program. If you keep your unused parameter blocks in an OS queue, you can safely claim one and reuse it anytime.Avoid SyncWait. Does your Macintosh just sit there not responding to user events? Drop into the debugger and take a look at the code that’s executing. Does it look like this?MOVE.W    $0010(A0),D0BGT.S    -$04,(PC)That’s SyncWait, the routine that synchronous calls sit in while waiting for a request to complete. Register A0 points to the parameter block used to make the call, offset $10 is the ioResult field of the parameter block, and SyncWait is waiting for ioResult to be less than or equal to 0 (noErr).The ioResult field is changed by code executing as a result of an interrupt. If interrupts are disabled (because the synchronous call was made at interrupt time) or if the synchronous call was made to a service that’s busy, you’ll be in SyncWait forever. Take a look at the parameter block and where it is in memory, and you’ll probably be able to figure out which synchronous call was made at interrupt time and which program made it.Leave a trail of bread crumbs. There’s nothing harder than reading chained asynchronous source code with no comments. You should always use comments to remind yourself where your chained call sequence goes. In the PPC code example given above, I left comments like “Continued at EndComplete” or “Dequeued by ProcessPPCData” to remind me where the chained call sequence will resume execution.Common Problems and Their SolutionsThis section warns of some common problems and suggests ways to work around them.Time-Consuming Tasks at Interrupt TimeYou may find a situation where a completion routine needs to perform some time-consuming task, but that task can be performed from interrupt-time code. This is a situation where the Deferred Task Manager may be useful. The Deferred Task Manager allows you to improve interrupt handling by deferring a lengthy task until all interrupts can be reenabled, but while still within the hardware interrupt cycle. WaitNextEvent sleep latencyIf you set your sleep time to a large value, maybe because you’ve been switched out, polling from the program’s event loop may cause additional latency. The Process Manager’s WakeUpProcess call, when available, can be used to shorten the time between when a completion routine queues a parameter block and when your program’s event loop polls the queue header and processes the data in the parameter block. WakeUpProcess does this by making your program eligible for execution before the sleep time passed to WaitNextEvent expires.The only parameter passed to WakeUpProcess is the process serial number of the process you want to wake up. You’ll need to get your program’s process serial number with the GetCurrentProcess function and add it to the extended parameter block used to call asynchronous functions:{ Zero the process serial number. }myPB.myPSN.highLongOfPSN := 0;myPB.myPSN.lowLongOfPSN := 0;{ Make sure the Process Manager is available. }IF Gestalt(gestaltOSAttr, myFeature) = noErr THEN    IF GetCurrentProcess(myPB.myPSN) = noErr THEN        ; { Either we got the process serial number or it's still zero. }The completion routine would use the process serial number (if available) to wake up your program immediately after queueing a parameter block:{ Drop the parameter block in the "done" queue for handling later. }Enqueue(QElemPtr(pbPtr), @gDoneQueue);{ If we have a process serial number (myPSN <> 0), wake up the process. }IF (pbPtr^.myPSN.highLongOfPSN<>0) OR (pbPtr^.myPSN.lowLongOfPSN<>0) THEN    IF WakeUpProcess(pbPtr^.myPSN) = noErr THEN        ; { Wake up the process. }Stack Space and Code Executing at Interrupt levelHave you ever thought about the stack space used by interrupt code? Where does it come from? How much is available? Good questions.When interrupt code (including completion routines) is called, it borrows space from whatever stack happens to be in use at the time. That means you have no control over the amount of stack space available, and so should use as little of the stack as possible.At times, very little stack space is available, because some common Macintosh system calls temporarily use large portions of the stack. For example, some QuickDraw routines may leave as little as 1600 bytes of stack space and MoveHHi can leave as little as 1024 bytes of stack space under certain conditions. That’s not a lot of space to borrow. If your interrupt code will call a routine that uses more than a few bytes of stack space, you should call the StackSpace function before calling that routine.The typical symptom of using too much stack space is a random crash, because the memory you trash by overflowing the stack could belong to any program — including the Macintosh Operating System.Here are the easiest ways to reduce the amount of stack space used by interrupt code:•    Don’t use local variables. Either extend your parameter block to hold any variables needed by your completion routine or keep an OS queue of buffers that can be used by your completion routine.•    Try to keep the number of calls from your completion routine to other routines to a minimum. Each routine you call uses part of the stack to build a stack frame.Problems with Reusing Parameter BlocksThere are three problems you may run into when you reuse a parameter block: unfortunate coercions, unfortunate overlap, and garbage in the parameter block.Unfortunate coercions. Make sure parameter blocks are large enough for every use you’ll put them to. For example, if you use a parameter block for both PPC Toolbox calls and File Manager calls, make sure the parameter block is large enough to hold any of the parameter blocks used by either manager. One way to do this is with a variant record:variantPBRec = RECORD        CASE INTEGER OF        1: (PB: ParamBlockRec);            { File Manager parameter blocks }        2: (cInfoPB: CInfoPBRec);        3: (dtPB: DTPBRec);        4: (hPB: HParamBlockRec);        5: (cMovePB: CMovePBRec);        6: (wdPB: WDPBRec);        7: (fcbPB: FCBPBRec);        8: (ppcPB: PPCParamBlockRec);    { PPC Toolbox parameter block }        ENDUnfortunate overlap. Don’t assume variant record fields with the same name are in exactly the same place in the variant record. If they aren’t, you’ll run into problems with overlap. Check first and be sure.Garbage in the parameter block. When reusing a parameter block, make sure data from the last use doesn’t affect the next call. Always initialize all input fields. Many programmers go one step further by clearing the entire parameter block to zeros before initializing the input fields.Completion Order MixupsDon’t depend on a service being single-threaded (requests executed one at a time) or on requests being handled in the order they were made (first in, first out). The File Manager is single-threaded, but requests may not always be handled in the order they were made. The AppleTalk drivers allow multiple requests to execute concurrently.If the order of completion is important, don’t use concurrent calls — use chained calls. For example, if you write some data and then expect to read that data back, don’t start an asynchronous write and then start an asynchronous read before the write completes. If the calls aren’t handled in the order they were made, the read may complete before the write.Polling ProblemsIf your application that polls for completion works great when it’s the current application, but slows down dramatically or stops when it’s in the background, check for these common problems.The canBackground bit. If you forget to set the canBackground bit in the SIZE resource, your application’s event loop won’t get called with null events while your application is in the background. If you’re depending on null events for polling, your program won’t poll while it’s in the background.Large WaitNextEvent sleep values. Did you crank up the sleep value passed to WaitNextEvent when your application received a suspend event? Talk about additional latency! This will do it if you’re polling from the event loop.What are other applications doing? Other applications can slow your event handling down by not calling WaitNextEvent regularly. If your polling from the event loop slows down because of that, there’s not a lot you can do about it.If your polling stops when another application is in the foreground, it could be that the other application isn’t handling its update events. See Macintosh Technical Note “Pending Update Perils” for a description of this problem.Polling from VBL tasks in an application’s heap. VBL tasks in your application’s heap are removed from the VBL queue during a context switch when yourapplication is switched out and are added to the VBL queue when your applicaton is switched back in. VBL tasks in the system heap are unaffected by context switches.If you poll from a VBL task and don’t want polling to stop when your application is switched out, make sure you put your VBL task in the system heap.CompletionThere are many situations where synchronous calls work well. However, there are times when asynchronous calls must be used to prevent system deadlock or to let your program continue execution while waiting for time-consuming calls to complete. Understanding the material covered in this article should help you understand when to use asynchronous calls and give you the techniques needed to avoid the problems commonly encountered in code that executes asynchronously.RECOMMENDED READING•    Inside Macintosh Volume II (Addison-Wesley, 1985), Chapter 6, “The DeviceManager,” Chapter 10, “The AppleTalk Manager,” and Chapter 13, “TheOperating System Utilities.”•    Inside Macintosh Volume V (Addison-Wesley, 1991), Chapter 28, “The AppleTalk Manager.”•    Inside Macintosh Volume VI (Addison-Wesley, 1992), Chapter 7, “The PPC Toolbox,” Chapter 29, “The Process Manager,” and Chapter 32, “The AppleTalk Manager.”•    Inside Macintosh: Files (Addison-Wesley, 1992), Chapter 2, “The File Manager.” Previously, Inside Macintosh Volume II, Chapter 4.•    Inside Macintosh: Processes  (Addison-Wesley, 1992), Chapter 6, “The Deferred Task Manager.” Previously, Inside Macintosh  Volume V, Chapter 25 and Macintosh Technical Note #320, “Deferred Task Traps, Truths, and Tips.”•    Macintosh Technical Notes “MultiFinder Miscellanea” (formerly #180), “Setting and Restoring A5” (formerly #208), “NuBus Interrupt Latency (I Was a Teenage DMA Junkie)” (formerly #221), and “Pending Update Perils” (formerly #304).SOMEWHERE IN QUICKTIME    Top 10QUICKTIME TIPS    JOHN WANGTo inaugurate this new column on QuickTime, we’ll take a look at ten useful tips for QuickTime application developers. This is certainly not an exhaustive list, but it is an important one. Here’s the list:    10.  Working around data reference limitations.    9.    Using GetMovieNextInterestingTime.    8.    Not calling ExitMovies.    7.    Getting a movie’s unscaled size.    6.    Avoiding the Movie Toolbox when using the standard movie controller.    5.    Prerolling a movie for improved playback.    4.    Using CustomGetFilePreview with custom dialogs.    3.    Conditionally registering a component that requires a hardware device.    2.    Detaching a movie controller properly.    1.    Calling MaxApplZone from every application.Some of the tips describe pitfalls that need to be avoided, while others are simply clarifications. Let’s take a closer look at each one.    10.    Working around data reference limitations.A current limitation of QuickTime is that each media can have only one data reference to a media data file. This isn’t a problem except when you start cutting and pasting between tracks that refer to different media. You’ll then be required to copy the media data from one media data file to another. For example, InsertTrackSegment will copy media data between media if the tracks refer to different media.Calls like GetMediaDataRefCount, AddMediaDataRef, and GetMediaDataRef will reflect the “one data reference” limitation by only accepting index values of 1. You can’t replace an existing media data reference in QuickTime 1.0, but you can in QuickTime 1.5, with a new call, SetMediaDataRef. Using this routine is a common way of manually resolving media data references that may have been moved by an application. For example, if you move a movie data file onto a different volume, you can update the alias using the Alias Manager and update the data reference for the movie with SetMediaDataRef.9.  Using GetMovieNextInterestingTime.Since QuickTime is time based rather than frame-number based in the way it deals with temporal video data, a common question is how to get information about movie frames, such as frame rate. The answer is to use GetMovieNextInterestingTime. This function allows you to step quickly and easily through interesting times in a movie. For example, for an estimate of the frame rate of a movie, you could use GetMovieNextInterestingTime to count the total number of frames in the movie and divide it by the total duration of the movie. Likewise, you could use GetMovieNextInterestingTime to identify the 600th frame in a movie. Since the internal data structure of QuickTime movies is optimized for accessing this type of information, GetMovieNextInterestingTime and the other GetNextInterestingTime calls are very efficient.8.  Not calling ExitMovies.One recommendation that contradicts QuickTime 1.0 documentation is that applications should not call     ExitMovies before quitting. QuickTime calls this function at ExitToShell time, and it’s safer to allow QuickTime to release private storage and component connections at that time. This prevents problems such as closing components in the wrong order. For example, the proper way to clean up after a movie that uses a standard movie controller is to dispose of the movie controller first, and then dispose of the movie. If done in the reverse order, there may be adverse consequences.7.  Getting a movie’s unscaled size.An application should save the movie box obtained with GetMovieBox when a movie is loaded so that it can retrieve the intended offset and scaling of the movie for playback. However, some applications may also want to get the unscaled size, and there isn’t an intuitive way to get it. Since the programmatical effect of calling SetMovieBox is that the movie matrix is changed to reflect the new offset and scaling, you can easily get the movie box for an unscaled movie by setting the movie matrix to the identity matrix; using the utility routine SetIdentityMatrix along with SetMovieMatrix accomplishes this. Then GetMovieBox will return the unscaled size and offsets.However, there’s a loophole. If a track inside the movie is scaled, there may still be scaling in playback since QuickTime supports transformation matrices for movies and for tracks within a movie. Therefore, when working with scaling, applications need to pay attention not only to the movie’s scaling but to the tracks’ scaling as well.6.  Avoiding the Movie Toolbox when using the standard movie controller.When using the standard movie controller, you should almost never use any Movie Toolbox routines that control movie playback or change movie characteristics. For example, it would be a mistake to call StartMovie to start playing a movie. Instead, use the movie controller equivalent, MCDoAction with mcActionPlay. Calling StartMovie directly causes the movie to play but with the controller’s button in the pause state, not reflecting that the     movie is playing back. Similarly, to set looping, you would use MCDoAction with mcActionSetLooping. Bypassing the movie controller by using the Movie Toolbox routines directly on a movie controlled with a movie controller can have dire consequences. As an example, if you set looping for a movie before creating a controller with NewMovieController, you’ll cause the Macintosh to crash. Don’t let it happen to you! 5.  Prerolling a movie for improved playback.Prerolling can improve playback performance by allowing QuickTime to do preliminary initialization. Since PrerollMovie is passed the movie time and rate, it can fill buffers and caches optimally to prevent initial stuttering. Normally, QuickTime automatically prerolls the movie for you. For example, if you call StartMovie, you don’t need to also call PrerollMovie, since StartMovie prerolls the movie for you. The QuickTime 1.5 documentation describing the StartMovie call states this clearly. Likewise, the standard movie controller is optimized to preroll whenever the user starts a movie with the keyboard or mouse. If you call PrerollMovie in these situations, the second PrerollMovie is redundant and will simply waste time. In all other cases, prerolling by calling PrerollMovie is recommended before initiating playback. For example, you should call PrerollMovie before SetMovieRate.4.  Using CustomGetFilePreview with custom dialogs.If you use CustomGetFilePreview with custom DLOG and DITL resources, you should be aware of a bug with the System 7 pop-up menu CDEF: pop-up menus used in conjunction with black-and-white grafPorts are shifted to the wrong location within the dialog box. The simple workaround is to force the dialog to be a cGrafPort by adding a 'dctb' resource with the same ID as the DLOG and DITL resources. You can easily create a 'dctb' resource with ResEdit by selecting the Custom color button in the DLOG resource template window. For more information on the 'dctb' resource, see the Dialog Manager chapter in Inside Macintosh: Macintosh Toolbox Essentials (or in Inside Macintosh Volume V).    3.  Conditionally registering a component that requires a hardware device.If you write a component that requires a hardware device, you should set the wantsRegisterMessage flag to give your component an opportunity to verify that the specific hardware is properly installed. If the hardware isn’t available, you can then indicate to the Component Manager that you don’t want the component registered. The register routine, called with selector kComponentRegister, should return FALSE if it does want to be registered and TRUE if it doesn’t.One thing to be aware of is that even during registration, the component will be opened with OpenComponent and closed with CloseComponent. Therefore, you can expect OpenComponent before the ComponentRegister routine is called, and CloseComponent after ComponentRegister is called.For example, if you have a 'vdig' that works with a NuBus video digitizer card, each time that OpenComponent is called you can check whether the hardware is correctly installed, and then return that status when ComponentRegister is called by the Component Manager.2.  Detaching a movie controller properly.If you want to place the standard movie controller in a different window or location from its usual placement directly below the movie, you must detach the movie controller. Follow these steps:1.  First bring up the controller by calling NewMovieController with the flag mcNotVisible so that the controller is initially invisible. If you don’t do this, the application will momentarily display the controller in the wrong location.2.  Call MCSetControllerAttached with FALSE to detach the controller.3.  Call MCSetControllerPort to move the controller to a different port if you want to place it in a different window. If you only want to move the controller in the same window as the movie, you don’t have to call MCSetControllerPort.    4.  Call either MCPositionController or MCSetControllerBoundsRect to move the controller to the new location in the port.5.  Call MCSetVisible to display the controller.The movie will remain in whatever port it was assigned to using SetMovieGWorld. If MCSetControllerPort isn’t called (step 3), the controller will remain assigned to the movie’s port when NewMovieController is called.For example:SetMovieGWorld(myMovie, (CGrafPtr) myWindow, 0);mcMC = NewMovieController(myMovie, &movieBounds,                mcTopLeftMovie + mcNotVisible);MCSetControllerAttached(mcMC, FALSE);MCSetControllerPort(mcMC, myOtherWindow);MCPositionController(myMC, &movieBounds,                &newControllerRect, mcTopLeftMovie);MCSetVisible(myMC, TRUE);1.  Calling MaxApplZone from every application.Not calling MaxApplZone in an application is the reason why many simple QuickTime playback applications play back movies poorly. Because the Memory Manager grows the heap only if there isn’t any purgeable or free space left, QuickTime doesn’t have the space it needs to play back a movie optimally. Since there’s no penalty or drawback for calling MaxApplZone, all applications should call the routine during initialization. In fact, MaxApplZone should be your first Macintosh Toolbox call, because initializing QuickDraw and other managers could allocate memory.We hope these tips will help you avoid some of the most common pitfalls of QuickTime development. With so many developers writing QuickTime applications and adding QuickTime support into existing applications, we want the journey to be as smooth as possible. We’ll keep you updated and informed by continuing to bring you insightful tips and details about QuickTime in this column. Watch for it!    INSIDE QUICKTIME AND COMPONENT- BASED MANAGERSBILL GUSCHWANIntercepting the processing of a QuickTime routine enables you to debug the routine, use the routine in new ways, and better understand QuickTime architecture. To intercept the routine, you need to know something about its low-level implementation. This article discusses the low-level implementation of QuickTime routines, and also describes tools and programming techniques that can be used to debug, modify, and analyze QuickTime routines. Some of these techniques take advantage of the Component Manager, and their usefulness will extend beyond QuickTime as future managers capitalize on components. As QuickTime routines pass through some common locations, they’re accessible to your application or to a debugger. A QuickTime routine begins with its function name, as used in your application and defined in the interface files. It usually compiles as an A-trap and maybe some assembly glue. The routine may call other Macintosh routines, be affected by global data structures, pass through a grafPort’s bottleneck, or pass through a component’s main function. Because you have access to these locations, you can intercept the processing of the routine, perform your own special processing, and then allow the normal execution of the routine to continue. This article’s examples use MacsBug and TMON Pro (TMON Professional v. 3.0.1 from Icom Simulations, Inc.) to intercept and analyze routines. The tools discussed create resources for both debuggers, though in some situations you’ll want to use one debugger over the other. For example, the language extensibility of TMON Pro’s built-in assembler provides capabilities that other debuggers don’t provide. Now let’s get into the practical aspects of analyzing and debugging QuickTime routines.QuickTime A-TrapsAn A-trap is a two-byte opcode that always begins with the hexadecimal numeral A. The remaining 12 bits in the opcode identify the particular routine you’re calling calling along with other information about the call. A-traps interrupt the normal processing of the CPU and cause it to jump through a low-memory vector to the trap dispatcher. The trap dispatcher examines the bit pattern of the opcode to determine the actual location of the Macintosh routine in memory, and then jumps to it. Almost all Macintosh Toolbox routines use the A-trap mechanism to jump to their code. In the early days of the Macintosh, there was one routine name per A-trap, but the number of routines increased so dramatically that a second mechanism was introduced to avoid exhausting all the A-traps. This mechanism uses the normal A-trap mechanism to identify a grouping of routines (usually defined by a specific manager) and uses selectors located on the stack or in a register to identify the specific routines within the grouping. QuickTime uses only four A-traps:•    0xAAAA: Movie Toolbox•    0xA82A: Component Manager •    0xAAA3: Image Compression Manager•    0xABC2: Matrix routinesUsing four A-traps for over 500 routines is possible because the interface glue can push routine selectors into registers or onto the stack. QuickTime picks the routine it needs to execute from the value of the selector. For example, with the Movie Toolbox, QuickTime uses a word in the D0 register. So 0x303C and xxxx (the two-byte selector) appear before the A-trap in the Movies.h file. This disassembles into MOVE.W #$xxxx, D0. If you want to find out what other opcodes mean, try using the TMON Pro assembler as described in “TMON Pro Assembler Demo.” On a separate note, components implement routines through selectors as well. In some ways, a component is not unlike an A-trap. The ramifications of this are discussed later in the section “Bottlenecks.”Trapping Compiled ApplicationsA QuickTime routine’s A-trap provides a common location that your debugger can interact with. Traditionally, Macintosh developers have used MacsBug to investigate the flow of A-traps in compiled applications. Knowing the sequence of A-traps needed to implement specific functionality provides invaluable information exceeding the scope of even the best documentation. Let’s see what happens when we take the simple QuickTime debugging approach of breaking on the four A-traps. For example, start with the 0xAAAA trap. If you perform an “atb _AAAA” and run MoviePlayer, MacsBug is continually invoked. You can use the debugger to see the selector value that identifies the routine, but unless you have the interface files in front of you or you memorize the selector values, you won’t be able to tell which QuickTime routine is being called. You can probablyTMON PRO ASSEMBLER DEMO    TMON Pro has an assembler/disassembler built in. You can enter TMON Pro, type hexadecimal machine code, and watch as it’s disassembled into assembly. To do this, you need to make use of TMON Pro’s typed windows, which provide alternative views of the same location in memory. So, if you anchor an Assembly window and a Memory window at some safe location in memory, you can type machine code in the Memory window and watch the numbers translate into the assembly routines in the Assembly window.TMON Pro sets aside an area of memory for you to play with, identified by the variable PlayMem. Here’s a     useful alias that you can install in your TMON script (it assumes you use the script provided with TMON Pro): alias PlayTime, "TopWind .10 ∂n New Memory HereHP,:Δplaymem ∂BottomWind .6 ∂n New Assembly HereHP,Δplaymem ∂Open Registers #1=#0"Now you can type “PlayTime” at the command line and have a safe area in memory for exploring the TMON Pro assembler. The Playtime alias anchors the two windows to the same place in memory and swaps out the registers so that you don’t harm them while you play (see Figure 1).    Figure 1TMON Pro Windows    memorize a few routines like EnterMovies, which has a selector value of 1. You could even record all the A-trap routines (using the atr command), print to a file, and compare the traps against the interface files. However, these methods leave a lot to be desired.Because there’s no one-to-one correspondence between A-traps and routines, you need some tools to facilitate trapping QuickTime applications. To take advantage of trapping compiled applications, you’d like to be able to do the following:•    Set the A-trap break on the routine name.•    Easily identify the routines in the debugger.Using 'mxbm' ResourcesYou can set A-trap breaks on QuickTime routine names by creating MacsBug macros in the form of 'mxbm' resources. Unfortunately, MacsBug doesn’t ship with the 'mxbm' resources for QuickTime, and creating those resources by hand would be tedious at best. So I wrote debugit, an MPW tool that converts standard Macintosh C headers into the resources. The tool and the 'mxbm' resources that are needed to set QuickTime A-trap breaks are on the Developer CD Series disc and the QuickTime Version 1.5 for Developers disc. (Also supplied are the 'mxbm' resources for several other managers that use A-traps with routine selectors.) You simply place the resources in your Debugger Prefs file using a resource editor and reboot.Using MacsBug in this way is still limited because even though you can break on a routine name, the names of the QuickTime routines aren’t displayed when you’re in MacsBug — only the assembly code is displayed. Using A TMONPRO User AreaYou saw (in “TMON Pro Assembler Demo”) how you can type machine code in TMON Pro and watch it disassemble. While this is fun, its practical use for developers is limited. The real power of the TMON Pro assembler comes from the extensibility of its language. With a little work, you can use TMON Pro to both break on routine names and display routine names instead of assembly code in the debugger.To extend the vocabulary of TMON Pro’s interactive assembler, you need to create TMON Pro assembler macros for the A-traps and glue, which TMON Pro disassembles into the QuickTime function name. TMON Pro looks many instructions ahead to disassemble the A-trap and glue into the routine name. If you create the requisite 'Asm ' resources, the TMON Pro Assembly window can display code likeMOVE.W #1,D0_AAAAas follows:_EnterMoviesIf you create the proper aliases ('mxbm' resource equivalents), you can set A-trap breaks on QuickTime routine names as well.Creating the 'Asm ' resources manually is impractical, so I modified debugit to create both the assembler macros and the aliases for setting breaks on the QuickTime routine names from a Macintosh C interface file. To load the 'Asm ' resources into TMON Pro, you also need to create a TMON Pro user area to hold the 'Asm ' resources (see “Creating Debugging Tools”). To keep the resources and aliases in one location, you place the aliases in the data fork of the TMON Pro user area. TMON Pro looks there when it’s loading scripts. To use the QuickTime Angus User Area (which is on the Developer Series CD disc), just drop it in your TMON folder and reboot. Remember, this user area is large and contains an alias for every QuickTime routine. But it’s easy to pull it out if you want to run stealthily.Creating debugging tools    Although the QuickTime Angus User Area and 'mxbm' resources are included on the Developer CD Series disc, instructions for creating them are given here to show how simple it is. You could create resources for other managers using the same technique. The CD includes a script that uses the following commands to create the MacsBug and TMON Pro resources for QuickTime.Making aN ANGUS user areaTo create a debugging user area for TMON Pro you need to have TMON Pro installed, because the script will automatically place the user area in your TMON Folder. In addition, you need to do the following:•  Place the MakeUserArea script in your MPW Scripts folder. •  Place the debugit MPW tool (on the CD) in your MPW Tools folder.•  Place the TMONTypes.r and Macsbug.r files in your MPW RIncludes folder.•  Place the User Area Template (on the CD) in your current directory.    With the tools properly stored, you can create the QuickTime Angus User Area with the following command:makeuserarea {CIncludes}"Movies.h" ∂    {CIncludes}"ImageCompression.h" ∂    {CIncludes}"Components.h" ∂    {CIncludes}"QuickTimeComponents.h" ∂    {CIncludes}"MediaHandlers.h"MakeUserArea is a script that uses the Rez, C, and debugit tools, so you can alter its behavior fairly easily. Be sure to use the script with the managers of your choice!MAKING 'mxbm' resourcesTo make 'mxbm' resources, you need to place the debugit tool in your MPW Tools folder, Macsbug.r in your MPW RIncludes folder, the MakeMxbm script in your MPW Scripts folder, and a Debugger Prefs file in your System Folder. Here’s how to make the 'mxbm' resources for Movies.h:makemxbm {CIncludes}Movies.h MoovDispatch 128    With the QuickTime Angus User Area you can set breaks as you do with 'mxbm' resources in MacsBug. Just type the routine name without the underscore at the command line (type Command-space to invoke the command line). By default, typing the name of the QuickTime routine sets an intercept action, or break, for the A-trap. You can also specify the other four trap actions by using the trap action keywords after the QuickTime routine name. For example, to turn on a heap trap action every time EnterMovies is called, typeentermovies heapYou can also turn off trap actions from the command line. So, for example, if you type “findnextcomponent,” you can cancel it with “findnextcomponent nointercept.” You can shorten your commands by creating a macro such asmacro ni,"nointercept"Several useful macros are included as a separate script on the Developer Series CD disc. See the TMON Pro reference manual for more information on using macros. When you break into the debugger and look in the Memory window, TMON Pro’s interactive assembler uses the 'Asm ' resources from the resource fork of the user area to interpret the assembly code and display routine names. Now you have the tools you need to easily watch the flow of QuickTime routines in a compiled application (see Figure 2).Setting A-Trap Breaks on Common RoutinesAs mentioned earlier, a Macintosh Toolbox routine’s code is located via the A-trap vector, which provides a convenient location for interaction with a debugger. While watching the flow of A-traps can help you understand a manager, sometimes microscopic detail is needed to understand a specific routine. Historically, Macintosh developers have used MacsBug to investigate internal routines of Macintosh A-traps and provide keen insight where Inside Macintosh leaves off. This is usually done by setting A-trap breaks on routines called by the routine being investigated.Breaking on Common Resource Manager RoutinesIt may seem too obvious to mention that Macintosh routines use other Macintosh routines, but it’s a crucial debugging concept. Given a routine and its functionality, good Macintosh programmers can make excellent guesses as to which other routines it uses. For example, FlattenMovie calls an internal version of FlattenMovieData.Because a movie is the significant data structure introduced with QuickTime, let’s look at new movie calls (NewMovie, NewMovieFromFile, NewMovieFromHandle, NewMovieFromDataFork, and NewMovieFromScrap). Setting A-trap breaks on Macintosh routines is best done with a small speedy debugger — like MacsBug. So Figure 2The Flow of QuickTime Routines in TMON Prolet’s use MacsBug to find out how QuickTime loads its data. As you probably know, the data structure for a movie is undocumented. While any type of manipulation with the movie can be done with the Movie Toolbox, leaving the movie data structure undocumented can cause some confusion as to how a movie actually works. In fact, the movie on the disk is different in structure from the movie in memory. While the movie on disk is documented, the movie in memory is not, which lets the QuickTime team change the loaded movie without affecting your application. Keep that in mind as you begin investigating the exact nature of the movie in memory.The target application for this investigation is MoviePlayer because it calls the various new movie routines. MoviePlayer was created by the QuickTime team, and it’s widely distributed. If you launch the application and choose Open from the File menu, you’re presented with the CustomGetFilePreview dialog box.To look at the internals of an individual routine, you need to drop into the debugger before executing the routine. Simply set your traditional A-trap break and go:atb newmoviefromfile; gNext, open a movie that uses a 'moov' resource. Now you’re ready to investigate NewMovieFromFile’s use of internal routines. Since QuickTime uses the Resource Manager, you’ll set a break on GetResource and expect NewMovieFromFile to load the 'moov' resource from a file. In MacsBug, set a break on the condition:atb getresource (sp+2)^='moov'; br pc+2This command lets you check for all the calls that NewMovieFromFile makes to GetResource that load a 'moov' resource. Watch for one of the following messages in the debugger:Breakpoint at address routinenameA-Trap break at address routinenameIf you see the first message before the second, you know that NewMovieFromFile doesn’t use GetResource. As you’ll see, GetResource is not called. But you don’t need to give up on the GetResource idea. Some A-traps have variations, which makes it difficult to guess which routine is called. Two obvious variations of GetResource are Get1Resource and Get1IndResource. NewMovieFromFile can be passed nil for the resource ID, which means it probably loads the first 'moov' resource. With this theory in mind, break into NewMovieFromFile again, and this time set the break on Get1xResource instead of GetResource (Get1xResource is the MacsBug equivalent of Get1IndResource):atb get1xresource (sp+2)^='moov'; br pc+2When you leave MacsBug, you’ll get an A-trap break and thus know how NewMovieFromFile loads the movie.Unfortunately, breaking on GetResource works for only one of the five new movie calls. You don’t get a break with NewMovie, because the call is similar to a NewWindow call and doesn’t bring in a resource. You may get a break with a NewMovieFromFile call, since it does bring in the 'moov' resource from the file. It’s similar to a GetNewWindow call, but it may break on Get1IndResource or Get1Resource, depending on whether you supplied a resource ID to the call. NewMovieFromHandle and NewMovieFromDataFork will not break, because a movie doesn’t have to be stored in a resource. You don’t get a break for NewMovieFromScrap, because it loads the movie directly from the scrap.As you’ve seen, although breaking on GetResource can provide some insight, it’s limited in what it can tell you about the general class of new movie calls. Breaking on GetResource showed you how the new movie calls differ in their methods of loading the data. However, it didn’t show how they implement their common behavior. Their similar names indicate that the calls exhibit similar behavior in loading a movie into memory. While it’s true you can break on the loading of code resources, and even code resources of different types (WDEF, CDEF, INIT), you have limited information to differentiate one code resource from another (other than by the resource type). Thus, we turn to techniques for breaking on component routines.Breaking on Common Component Manager RoutinesComponents consist of a set of routines that implement a specific type of functionality. To identify the exact nature of the functionality, a component has an associated 'thng' resource. (At one point in their evolution, components were called “things.”) The 'thng' resource stores a reference to the component code, a ComponentDescription record, string resources, and an icon resource. The ComponentDescription record identifies the type of functionality that the component’s set of routines implements; for example, a media handler component is identified by the OSType 'mhlr' in the type field of the ComponentDescription record. Thus, components make it possible to break on the loading of functionality.Components are identical to code resources, except that a component uses an extended resource specification in the form of the 'thng' resource. Normal resources use a resource type and ID for their resource specification. Because a component consists of a typed code resource and a 'thng' resource, you can use the traditional GetResource techniques on components, but in newer and better ways.So let’s exploit QuickTime’s use of components. QuickTime depends on over 50 components. The best call to break on is FindNextComponent, which queries the Component Manager for components and returns a reference to a component. It’s consistently called by applications that need a component, and its parameters contain extra information about the component. Breaking on OpenComponent isn’t as useful, because you have no simple way of identifying the component type. You break on FindNextComponent just as you do with GetResource:atb findnextcomponentThe first field of a ComponentDescription record is the component type. Since it’s the last parameter pushed on the stack, you can anchor a dereferenced stack pointer to the upper left corner of MacsBug:show 'sp^' aBy watching the status region, you can see which components QuickTime loads and when they’re loaded. This helps you understand the internal behavior of a routine. Alternatively, in TMON Pro, you could anchor a Memory window to a dereferenced stack pointer, as shown in Figure 3. Unfortunately, QuickTime doesn’t always call the A-trap mechanism for some internal routines. A notable example is OpenDefaultComponent, which may not call FindNextComponent via the A-trap mechanism. It can use a direct dispatch mechanism, which helps speed up QuickTime. One solution to this problem is to set an A-trap break on OpenDefaultComponent as well as FindNextComponent. Another solution is to use the thing dcmd and an A-trap break on OpenComponent. Even though with OpenComponent you have no simple method of identifying the type of component, at least OpenComponent must always be called for any component that’s opened. The thing dcmd lets you find out what type of component is loaded. It lists all components registered with the Component Manager and, in the far left column, lists the number of instances.Let’s consider the NewMovieFromFile example again. You break on NewMovieFromFile, and then execute the thing dcmd to see what components are loaded, remembering particularly the number of instances. Next, you break on OpenComponent, step over it, and invoke thing again. You can easily notice the change in instances for the 'clok' component. This technique may be a little more cumbersome, but because QuickTime sometimes bypasses the trap dispatch mechanism, it’s more accurate.As more Macintosh Toolbox managers rely on components, you’ll find trapping on typed functionality to be invaluable to your understanding of that manager. Debugging techniques that you’ve used with the Resource Manager can be used successfully with the Component Manager.Dynamic State InformationYou’ve seen how debuggers can interact with A-traps to provide valuable information about QuickTime routines. Now let’s leave the realm of debuggers and forcus on theFigure 3Breaking on Component Routines With TMON Pro Debugging Toolsinteraction of global data structures and QuickTime routines. The Macintosh uses state information extensively to build simulations of real-world environments. QuickDraw’s grafPort provides a familiar example — it contains state information to provide a consistent context for graphics operations. But it can trip you up if you’re not aware of that context. With that in mind, let’s continue our investigation of QuickTime routines. Go back to MoviePlayer and set the breaks again on NewMovieFromFile. Then use the technique described in the previous section to find out which components are loaded. NewMovieFromFile first loads a 'clok' component. This is probably part of a NewTimeBase call. Testing this guess by breaking on NewTimeBase shows that the TimeBase is created dynamically — it’s not a static part of a movie file format. What does it mean that all NewMovieFromFile calls load a TimeBase?QuickTime adds its own context in the form of dynamic state information. By default, a movie generates a TimeBase. Just as GrafPort supplies a data structure for graphical state information, TimeBase provides a data structure for time information. Any time can be autonomously specified by a time base, time scale, and time value, which are grouped in a convenient data structure called TimeRecord. If you work with QuickTime a lot, you’ll notice that you seldom use TimeRecord. It seems odd until you realize that if you use a movie, you already have a default TimeBase supplied. There’s no point to filling out a TimeRecord structure. There are easy calls to get the movie time scale (such as GetMovieTimeScale), and you usually specify a time value. Developers often forget the time context and make redundant calls. For example, developers forget that StartMovie calls SetMovieRate with the movie’s preferred rate, and call both StartMovie and SetMovieRate. For movies, don’t forget the time context. (This is not to say that TimeRecord is useless; when you don’t have a movie and need to specify a specific time, TimeRecord comes in handy.) If you continue breaking on component routines, you’ll see that after loading a 'clok' component, NewMovieFromFile dynamically loads its media handlers. The Movie Toolbox doesn’t know how to interpret media: it leaves that task to the media handlers. (Media handlers are discussed later under “Component Bottlenecks.”) A movie is a dynamically loaded series of components. As a further exercise for breaking on component routines, try looking at the components that CustomGetFilePreview uses.BottlenecksSome programming techniques allow you to alter Macintosh routines. QuickTime relies extensively on QuickDraw, and QuickDraw uses bottlenecks to implement its routines’ functionality. Bottlenecks are commonly used in two ways:•    You can observe the behavior of an entire group of routines by replacing one bottleneck routine with your own. Most commonly, you would put a Debugger statement in it.•    You can gain access to information at a lower level and before it’s been worked on. You can either change this information or use it for other purposes.grafPort BottlenecksQuickDraw provides some familiar examples of using bottlenecks. A grafPort contains pointers to all the low-level routines that it uses to implement its higher-level calls. By default the bottlenecks contain routines for drawing to the screen. When you create a grafPort, it’s possible to swap out those ProcPtrs and put in your own. The default QuickDraw bottlenecks are usually swapped out in two circumstances: printing and getting information. Since all of QuickDraw must route through bottlenecks in the grafPort, and there are only 20 bottlenecks, a savvy Macintosh programmer will know which high-level routines call which low-level routine.QuickTime introduces a new bottleneck — StdPix — to handle compressed image data. StdPix replaces the newProc1 bottleneck (see Chapter 4, “Color QuickDraw,” of Inside Macintosh Volume V for details). You can sit in this bottleneck (that is, replace it with one of your own) and look at compressed data before it’s decompressed.Let’s look at a situation where you may want to do this. The Picture Utilities Package is useful for getting information about pictures; however, it wasn’t designed to support QuickTime. For example, GetPictInfo returns an inaccurate depth for QuickTime compressed images. The following code shows how to work around this problem. You replace all a grafPort’s bottlenecks with dummy routines (so that nothing is actually drawn), except you can call GetCompressedPixMapInfo in the StdPix bottleneck. GetCompressedPixMapInfo returns the ImageDescriptionHandle for the picture, from which you can get the depth. DrawPicture eventually calls StdPix, among other bottleneck routines. Because the other bottlenecks were replaced with dummy routines, DrawPicture’s behavior is reduced to just a StdPix call. The parameters passed to the StdPix routine fill out the parameters of the GetCompressedPixMapInfo routine, which in turn retrieves the pixel depth via the ImageDescription structure. The sample code on the CD creates a window for this function to “draw” in.short    gDepth = -1;pascal void myStdPix(PixMapPtr src, Rect *srcRect,     MatrixRecordPtr matrix, short mode, RgnHandle mask, PixMapPtr matte,     Rect *matteRect, short flags){    ImageDescriptionHandle        desc;    Ptr                                data;    long                                bufferSize;        GetCompressedPixMapInfo(src, &desc, &data, &bufferSize, nil, nil);    gDepth = (**desc).depth;}pascal void myTextProc(short byteCount, Ptr textBuf, Point numer,                                 Point denom){}pascal void myLineProc(Point newPt){}pascal void myRectProc(GrafVerb verb, Rect *r){}pascal void myRRectProc(GrafVerb verb, Rect *r, short ovalWidth,                                 short ovalHeight){}pascal void myOvalProc(GrafVerb verb, Rect *r){}pascal void myArcProc(GrafVerb verb, Rect *r, short startAngle,                                 short arcAngle){}pascal void myPolyProc(GrafVerb verb, PolyHandle poly){}pascal void myRgnProc(GrafVerb verb, RgnHandle rgn){}pascal void myBitsProc(BitMap *bitPtr, Rect *srcRect, Rect *dstRect,                                short mode, RgnHandle maskRgn){}void GetQTImagePixelDepth(PicHandle picture){    CQDProcs    bottlenecks;    SetStdCProcs(&bottlenecks);                    // Define our own bottlenecks.     bottlenecks.textProc = (Ptr)myTextProc;    bottlenecks.lineProc = (Ptr)myLineProc;    bottlenecks.rectProc = (Ptr)myRectProc;    bottlenecks.rRectProc = (Ptr)myRRectProc;    bottlenecks.ovalProc = (Ptr)myOvalProc;    bottlenecks.arcProc = (Ptr)myArcProc;    bottlenecks.polyProc = (Ptr)myPolyProc;    bottlenecks.rgnProc = (Ptr)myRgnProc;    bottlenecks.bitsProc = (Ptr)myBitsProc;    bottlenecks.newProc1 = (Ptr)myStdPix;    // pixProc.         // Install our custom bottlenecks to intercept any compressed     // images.    (*(qd.thePort)).grafProcs = (QDProcs *)&bottlenecks;    DrawPicture(picture, &((**picture).picFrame));            (*(qd.thePort)).grafProcs = 0L;     // Switch back to the default procs.}component bottlenecksA QuickTime routine may be implemented by a component. In this case, the concept of sitting in bottlenecks applies in a useful way to QuickTime components. As you know, the Component Manager sends the routine selector to the component, and the component parses the selector in its main function. Since all the selectors flow through the main function, it would be extremely valuable to replace the componentwith your own delegating component in order to watch the selectors flow by. Just as you can sit in a bottleneck and capture routines, you can capture a component, perform an operation, and delegate the rest to the captured component. Then you could identify the sequence of routines needed to implement specific functionality. Fortunately, some components have standardized interfaces as defined by Apple. These public APIs make it easy to match up the selector to the routine name, as defined in the interface files. With the introduction of QuickTime 1.5, the API for the base media handler has been made available as defined in the file MediaHandlers.h. With a delegating component, you could theoretically modify the behavior of any component. But whether you can modify a given component depends on whether it implements the target request. Many components in QuickTime don’t implement this functionality, which is unfortunate. However, with the introduction of QuickTime 1.5, the media handlers support the target request. By allowing media handlers to be delegated, QuickTime 1.5 greatly opens its architecture, giving enhanced meaning to multimedia. For example, the text media handler delegates the generic media handler and uses its media scheduling and editing functions to do all the hard work. If you want to write your own media handler, delegating the generic media handler is just what you need.To create a generic delegating component, I’ll use a sample supplied with the article “Techniques for Writing and Debugging Components” in develop Issue 12. The sample is called NuMathComponent. It’s a simple matter to convert it into a generic delegating component.1.    Using a resource editor, replace the componentType, componentSubType, and componentManufacturer of the NuMathComponent.π.rsrc 'thng' resource with 'mhlr', 'vide', and 'angs', respectively. Using 'angs' for the manufacturer puts the component before 'appl' alphabetically. Because the Component Manager searches alphabetically, when a search is done by QuickTime for a component of type 'mhlr' and subtype 'vide', it grabs your component. This technique forces QuickTime to use your component, which then captures Apple’s component.2.    Open the NuMathCompontent.π project and open the NuMathComponent.c file.3.    Be sure to declare the globals variable at the top of the main function asPrivateGlobals**    globals = (PrivateGlobals**)storage;     This declaration gives you access to the fields in your global storage.4.     Delete the second switch statement in the main function and replace it withif (globals)    DelegateComponentCall(params,                            (**globals).delegateComponentInstance);else    result = paramErr;5.     In _NuMathOpen and _NuMathRegister, change the described component’s componentType and componentSubType fields to 'mhlr' and 'vide', respectively.6.     Build the code resource for the generic capture component (the code from develop Issue 12 on the CD has all the necessary files). You’ll have to turn the declaration of ComponentSetTarget into a comment if you’re using QuickTime 1.5.Your main function should look like the following sample code. Focus on the call to DelegateComponentCall, as it’s the major change needed to make the generic delegating component. To use the delegating component, either put it in the System Folder and reboot or drag and drop it on Reinstaller II.pascal ComponentResult main(ComponentParameters    *params, Handle storage){    // This routine is the main dispatcher for the NuMath component.    ComponentResult    result = noErr;    PrivateGlobals**    globals = (PrivateGlobals**)storage;     // Did we get a Component Manager request code (< 0)?    if (params->what < 0)    {        switch (params->what)        {            case kComponentOpenSelect:        // Open request.                result = CallComponentFunctionWithStorage (storage, params,                    (ComponentFunction) _NuMathOpen);                break;            case kComponentCloseSelect:        // Close request.                result = CallComponentFunctionWithStorage (storage, params,                    (ComponentFunction) _NuMathClose);                break;            case kComponentCanDoSelect:        // Can Do request.                result = CallComponentFunction (params,                     (ComponentFunction) _NuMathCanDo);                break;            case kComponentVersionSelect:    // Version request.                result = CallComponentFunction (params,                    (ComponentFunction) _NuMathVersion);                break;            case kComponentRegisterSelect:    // Register request.                result = CallComponentFunction (params,                    (ComponentFunction) _NuMathRegister);                break;            case kComponentTargetSelect:        // Target request unsupported.            default:                                // Unknown request.                result = paramErr;                break;        }    }    else            // Was it one of our request codes?    {        if (globals)            DelegateComponentCall(params,                                 (**globals).delegateComponentInstance);        else            result = paramErr;    }    return (result);}Now let’s go back to the old example: Open MoviePlayer, set the break on DelegateComponentCall, and anchor a Memory window at “Δ(sp+4)^+2” for TMON Pro or “show '(sp+4)^+2' l” for MacsBug. This displays the selector from the ComponentParameters data structure passed into DelegateComponentCall. You’ll be able to read the selectors for the routines as they’re passed into the main function of the component. Remember, you can compare these numbers with the interface files (there are no interface files for the video media handler because it doesn’t have a public API). In TMON Pro, you can open a View window of the interface file and look at the selectors without leaving the debugger.You can try other situations and other traps to see whether they call the video media handler. Or set breaks in the open, close, version, and register routines — to find out how Things! works, for example. If you bring up the Things! control panel and select your media handler, you’ll see Things! calls a trio of routines — open, version, and close. Also, you can see what calls are made to the component on startup. A simpler technique can be used if you just want to analyze the selectors. Enter MacsBug and execute thing, which will list the entry point for each component. Set a breakpoint on an entry point. You can now use the same “show” instruction to display the selector. If it uses a fast dispatch mechanism, the selector will be in the low-orderword of register D0. To modify this sample to be a media handler, you need to keep the same basic structure but support some or all of the selectors defined in the MediaHandlers.h file. For a description of those routines, refer to the QuickTime Version 1.5 for Developers CD.Old World Meets New WorldQuickTime routines can be intercepted and specially processed at various locations. Debuggers interact with QuickTime routines via the A-trap mechanism, providing valuable information about the sequence of routines needed to implement specific functionality. Applications can interact with QuickTime routines at the component level, allowing the program to change the routine’s behavior.The themes presented in this article extend beyond QuickTime. When newer technology comes from Apple, you can apply the common Macintosh themes of bottlenecks, contexts, and breaking on A-traps to new managers. Understanding these themes and applying them expedites your learning dramatically. In addition, you’re now armed with techniques for investigating future Macintosh managers, some of which will be implemented through use of components. The techniques discussed in this article can help you flatten your learning curve, which can only be an advantage.REQUIRED READING•    “Techniques for Writing and Debugging Components” by Gary Woodcock and Casey King, develop Issue 12.•    “Time Bases: The Heartbeat of QuickTime” by Guillermo A. Ortiz, develop Issue 12.•    “QuickTime 1.0: ‘You Oughta Be in Pictures’” by Guillermo A. Ortiz, develop Issue 7.•    “TMON Professional Reference Manual  and Tutorial  (Icom Simulations, Inc.).•    QuickTime Developer’s Guide, available from APDA as part of the QuickTime Developer’s Kit (#R0147LL/B), and the System 7.1 documentation. These have information on the Component Manager.•    Inside Macintosh Volume V (Addison-Wesley, 1986), Chapter 4, “Color QuickDraw.” PRINT HINTS    LOOKING AHEAD TO QUICKDRAW GX    PETE (“LUKE”) ALEXANDERWith the release of QuickDraw GX later this year, there are a few changes in store for print land. In this column, I’m going to talk about two of these changes — the disappearance of the PDEF 10 resource from the QuickDraw GX LaserWriter driver, and the disappearance of the 'STR ' (-8192) and 'PAPA' (-8192) resources from a system running QuickDraw GX. Like most changes, the fact that these resources are going away is both good news and bad news. The good news is that printing is going to work much better in the GX world than it does today. For one thing, the new printer driver architecture provides functionality that used to be unavailable through the Printing Manager, which is why people got involved in directly grabbing resources in the first place. The bad news is that if you are currently grabbing these resources, you’re going to have some problems running under QuickDraw GX, and you need to decide now how you’re going to deal with this.Before we get into solutions, however, let’s back up a bit, and answer the question, What’s a PDEF, anyway? A PDEF is just a code resource for printer drivers. All printer drivers contain multiple PDEFs, each of which implements a piece of the driver’s functionality, like displaying dialog boxes or alerts. PDEF 10 contains the printer access protocol (PAP) code that enables a LaserWriter driver to communicate with a network printer. (For details about the interface to PAP, see Chapter 10, “Printer Access Protocol,” in Inside AppleTalk.)    Some applications that need the PAP code have acquired it by sucking PDEF 10 out of the LaserWriter driver. Before Apple put together its PAP software licensing package, grabbing PDEF 10 like this was a quick and easy way to get what you needed. But it’s an approach that’s unsupported by Apple and that has always carried the seeds of compatibility problems. So what should you do if you’re currently grabbing PDEF 10 out of the LaserWriter driver? You’ve got the following possible solutions:•   Continue to grab PDEF 10, but make sure you’re prepared to handle failure gracefully when you can’t get it. Basically, you’ll need to let the user know that your application isn’t compatible with the version of system software being used — that is, the QuickDraw GX–based system. Not a very user-friendly solution, but that might be OK for your application.•    If all you need to do is download a PostScript™ file to the LaserWriter, use the PostScriptHandle PicComment and a basic print loop. Most applications need to do a lot more than send a bunch of PostScript code down the pipe — for instance, they need to set the characteristics of the PostScript printer — but if your application’s needs are really this limited, it can be happy in the GX world. If you’re interested in this approach, take a look at the Technical Notes “A Printing Loop That Cares . . .” and “PicComments — The Real Deal.” You can also look at the PostScriptHandleDemo snippet in the Snippets folder on the Developer CD Series disc.•  Write your own PAP interface files. This is a relatively time-consuming operation, but it gives you total ownership of the code, and your application is unlikely to break with future system software releases. Quite a few developers have had success with this approach.•   License Apple’s PAP library code — the same library that’s used within the LaserWriter Font Utility. The latest version (v. 1.5) of the library improves on the last version and has more complete documentation.    If you’re interested in licensing this library, please contact    Software LicensingApple Computer, Inc.20525 Mariani Avenue, M/S 38-ICupertino, CA 95014AppleLink: SW.LICENSEPhone: (408)974-4667•   Use Apple’s LaserWriter Font Utility and add your custom features to it. In System 7, the LaserWriter Font Utility can handle drop-in enhancements called UTILs. UTILs take care of all the communication issues for you, and they give you quite a bit of power and flexibility. If you’re interested in this approach, take a look at “PostScript Enhancements for the LaserWriter Font Utility” in Issue 10 of develop.At this point, you’re probably wondering which solution is the best for you. It all depends on your requirements. From my point of view, any solution besides the first is acceptable if it will keep your users happy and keep you compatible with future system software releases.Now let’s turn to the disappearance of the 'STR ' (-8192) and 'PAPA' (-8192) resources. On a non-QuickDraw GX system, the 'STR ' resource contains the name of the currently chosen printer driver, while the 'PAPA' resource contains the name and network address of the current PAP printer. Because QuickDraw GX will allow more than one active printer at a time, these resources will become obsolete.Why is this a problem? Only because some applications currently grab the 'STR ' and 'PAPA' resources to automatically select a printer without going through the Chooser. Under QuickDraw GX, it will be possible to redirect a print job to another printer via the Printing Manager’s public API. So new applications and applications revised to work under QuickDraw GX  will be able to     programmatically redirect print jobs on the fly in a clean, supported manner. If your application isn’t GX-smart, the simplest way to deal with the disappearance of the 'STR ' and 'PAPA' resources is probably just to remove your application’s feature of circumventing the Chooser. If your application absolutely requires this functionality, however, make sure that when these resources aren’t available, you tell the user to go use the Chooser. This way your application will print on a QuickDraw GX system without any problems. This column has looked at a couple of compatibility problems that can emerge when non-QuickDraw GX applications run under QuickDraw GX, and also at some of the ways that you can avoid these problems. As long as you’re prepared to implement one of the solutions recommended here, your application will run just fine under QuickDraw GX. And on the bright side, QuickDraw GX is going to allow your application to access and control a vast amount of information at print time. QuickDraw GX will provide the API your application requires to take care of all the user’s printing needs without having to cruise through printer driver or system resources. You asked for it, and soon you’ll have it!    REFERENCES    •    Inside AppleTalk (Addison-Wesley, 1990),    Chapter 10, “Printer Access Protocol.”     •    Macintosh Technical Notes “PicComments — The    Real Deal” (formerly #91), and “A Printing Loop That     Cares . . . ” (formerly #161), and “Printer Access     Protocol Q&As” under “Using PAP & code for     finding printer driver under System 7.”    •    “PostScript Enhancements for the LaserWriter Font    Utility” by Bryan K. Ressler, develop Issue 10.    MACINTOSH DEBUGGING: THE BELLY OF THE BEAST REVISITEDFRED HUXHAM AND GREG MARRIOTTADAPTED FROM THEIR TALK AT THE WWDC BY DAVE JOHNSONThis is a supplement to the article “Macintosh Debugging: A Weird Journey Into the Belly of the Beast” in Issue 8 of develop. It presents a few debugging tools that were discussed at Apple’s Worldwide Developers Conference in May 1992. Like those discussed in the previous article, these tools are designed to help you force the nasty, subtle bugs in your code to show their hideous little faces immediately, rather than lying in wait and biting you when you least expect it.People often ask us, “How can I be a totally awesome, godlike debugging stud [or studette] like you?” Unfortunately, the big truth from the Issue 8 debugging article is just as true now as it was then: debugging is hard. That’s just the way it is. The only way to get better at it is to practice. Now that we’ve got that straight and before we get into describing the new debugging tools, here are three pearls of wisdom to guide you in your practice.First of all, it helps to know a lot about the operating system. The better sense you have of how the Macintosh works, the better off you’ll be trying to track down a nasty bug. Dare to delve into the bowels of the OS. Read and reread Inside Macintosh; take it with you to bed, to the bathroom, out to dinner, and on dates. (You might want to invest in a sturdy wheelbarrow, especially with the new Inside Macintosh volumes proliferating like rabbits.) For that matter, read every Macintosh programming book ever written (especially those listed at the end of this article) and every Technical Note, Snippet, piece of Sample Code, and issue of develop, as well as every word on the AppleLink Discussion boards. Also, spend lots of time in debuggers, watching the system do its thing. If you’re not dreaming in hex, you’re not spending enough time in MacsBug.Second, get slammed a lot. The people who are the best at debugging are usually the ones who’ve had to track down the most bugs and therefore have an encyclopedic knowledge of them. If you have a really nasty bug in your code that crashes the machine on a seemingly random basis and takes you three days to find and squash, then by jove you’ll remember that bug the next time you see it. Simply put, the more bugs you find, the better you’ll be at finding bugs.Last, use good tools, and use them all. Reread the Issue 8 article. Turn on those tools and stress your code. Bend, fold, staple, and mutilate it. Show no mercy.These things will help you on your way to becoming a primo bug stomper, but debugging is like any complex skill in that it can’t really be taught past a certain point. You simply have to do it a lot, and over time you’ll get better. Tools and techniques such as the ones presented here can help enormously, especially by forcing hidden bugs to the surface, but they can never do the whole job for you.This time there are only four new tools to talk about — Double Trouble, Dispose Resource, Blat, and Smart Friends — so this article is much shorter than the last one. The tools are available on the Developer CD Series disc, as well as on AppleLink and elsewhere. We’re doing this backward from the last time: first we’ll present a buggy code sample, then we’ll talk about the tool that would find the bug.Double TroubleCan you find the bug in this code sample?myHandle = NewHandle(100);if (myHandle) {    AddResource(myHandle, 'dumb', 10, "\p");    if (resError()) HandleTheError();    CloseResFile(outputFileRef);    DisposeHandle(myHandle);}OK, time’s up. This one’s not too hard. The problem is that during CloseResFile the Resource Manager disposes of all the resources in memory. The DisposeHandle call afterward is unnecessary and is actually potentially disastrous. Normally you’ll just get an error and DisposeHandle will do nothing, but occasionally the data structures in the Memory Manager will conspire to really screw you.Here’s how: Master pointers are allocated in clumps called master pointer blocks, which are nonrelocatable blocks in your application’s heap. The master pointers that are currently free for use are kept in a linked list by the Memory Manager. The list is LIFO, like a stack: when you allocate a new handle, the Memory Manager uses the first master pointer in the free list, and when you dispose of a handle the freed master pointer is returned to the beginning of the list.Now the plot thickens. If the first master pointer in the free list also happens to be the first master pointer in its master pointer block (so that the master pointer and themaster pointer block have the same address) and then you dispose of a handle twice by mistake, very bad things will happen. On the first dispose, everything is fine: the Memory Manager frees the block the master pointer points to and returns the master pointer to the start of the free list. At this time, the master pointer still points to a valid block of memory, but now it’s the master pointer block itself! So on the second, unintentional dispose, when the Memory Manager dutifully frees the block for reuse, you’re set up for disaster. Subsequent memory use will likely result in writing over many master pointers, which will of course trash you one way or another.Figure 1 illustrates this scenario. On the left is the top part of a master pointer block that resides in the heap at address 80. The heap’s free list is a standard linked list (each entry contains the next entry’s address) beginning at hFstFree. Note that the first entry in the heap’s free list is also the first master pointer in the block. This is the first step to trouble.Figure 1How Disposing of the Same Handle Twice Can Spell DisasterNow we call DisposeHandle on the master pointer at 81. DisposeHandle looks at the block pointed to by the master pointer (in this case the block at 144, not shown), determines that it is indeed a valid block, marks it as free for reuse, and adds thenewly freed master pointer to the front of the free list. So far so good. Now the master pointer block looks like the one on the right in the figure.Then we call DisposeHandle on 81 again by mistake. DisposeHandle looks at the block pointed to by the master pointer (now it’s the block at 80, our master pointer block!), determines that it is indeed a valid block (uh oh), marks it as free for reuse (yikes!), and adds the newly freed master pointer to the front of the free list — and the heap is now hosed for good. This Memory Manager bug is subtle and rare, but oh so nasty.Even if you’re lucky enough to avoid this particular sequence of events, a double disposal is definitely a bug. Double Trouble is a system extension that watches calls to DisposeHandle to make sure it’s not being called on something in the free list. If it is, Double Trouble drops into the debugger with a suitable warning. We’ll be the first to admit that Double Trouble is far from perfect. It infers the existence of heap zones by watching InitZone and then trying to figure out when a heap isn’t a heap anymore. The possibility exists that it will guess wrong and cause a bus error when trying to walk a free list that’s no longer a free list. Furthermore, in some cases Double Trouble can noticeably slow down parts of the system. (After playing a long QuickTime movie, for instance, the machine may freeze for almost a minute.)But despite Double Trouble’s shortcomings, we do still recommend running it all the time. Just try to remember that it’s running so you don’t chase your tail trying to find the cause of occasional mysterious slowdowns.Dispose ResourceHere’s the code. What’s the bug?myPicture = GetPicture(kPicID);if (myPicture) {    DrawPicture(myPicture, &myRect);    DisposeHandle(myPicture);}That’s right, you should never call DisposeHandle on a resource handle. If you do, the Memory Manager will free it just fine, but the Resource Manager has another reference to it, stored in the resource map, that will be left dangling. Later on, since the Resource Manager doesn’t know the handle was disposed of, it may try some manipulation with the handle. The results may not crash you immediately, or at all — it depends on what the operation is and what’s in the handle — but they’re certainly not what was intended. Instead of DisposeHandle, you should always call ReleaseResource on resource handles. ReleaseResource will properly dispose of thehandle and will update the resource map. (Note that KillPicture won’t do the right thing here either; it’s intended for pictures created via OpenPicture, not for PICT resources.)Dispose Resource is another extension a lot like Double Trouble. It also watches DisposeHandle calls, this time looking to see if the handle being disposed of is a resource handle. If so, you’ll drop into the debugger with a suitable warning. Dispose Resource has one idiosyncrasy you should know about: it’s been known to indicate “false positives.” Some parts of the system (we haven’t been able to track down which ones yet) seem to save a resource handle’s state, detach the resource, and then restore the state of the handle (restoring the resource bit!). Use Dispose Resource. It will ensure that you don’t make the same mistake.BLATThis time the code’s in assembler:; Offset the rect by 128 pixels in each direction.PEA        theRect(A6)MOVE.W    $0080, -(SP)MOVE.W    $0080, -(SP)_OffsetRectIf you have “iron man” syndrome and insist on programming in assembly language, this can happen to you. We forgot to type a # in front of each $0080. As a result, instead of moving the number $0080 (128) onto the stack twice in preparation for the OffsetRect call, we’re moving the contents of memory location $0080. Often this kind of bug is immediately obvious, but not always. If you’re moving a Boolean, for instance, you have a fifty-fifty chance of getting the right value, even though you’re getting it from some random spot in memory. It’s those cases that will give you debugging headaches.One easy (and recommended) way to avoid the problem in this example is to write in a higher-level language. But we realize that’s not always possible, and besides, this is really a whole class of problems: reads and writes from places in memory you didn’t intend. The best way to catch this wild memory reference kind of problem is, naturally, with memory protection, something that — sadly — the Macintosh normally lacks. In the last article we mentioned Jasik’s implementation, but now there’s something else you should know about. Bo3b Johnson has written a dcmd called Blat that uses the MMU to protect memory locations 0–255 from both reads and writes.Blat has been tested and works well on the Macintosh IIfx, IIx, and SE/30. Because its operation is so hardware dependent, it’s hard to predict whether it will work on a given machine. Some basic guidelines are that it requires an MMU and won’t work with 68040 machines or with most configurations of machines with the IIci ROM (IIci, IIsi, LC). For further details, see the release notes and the source code, thoughtfully provided by Bo3b along with the dcmd itself.Smart FriendsThis bug is subtle, so pay close attention:#pragma parameter __d0 GetA0Ptr GetA0(void) = {0x2008};             // MOVE.l  A0,D0void MyCompletionRoutine(){    long            saveA5;    HooHahPtr    myHooHah;        myHooHah = (HooHahPtr)GetA0();    saveA5 = SetA5(myHooHah->myA5);    gSomething[0].flag = true;        // Set a flag in a global array.     SetA5(saveA5);}This code really tries hard to do everything right. As the name implies, it’s a completion routine, so it could be called at interrupt time. First a pointer to the data is retrieved from A0, and then A5 is set to a previously saved value, thus allowing the routine to access its global variables. Once A5 is set up, the global reference can be made safely. Finally, A5 is restored to its previous value to clean up. Sounds great, right? The only problem is, it doesn’t work. Here’s why: the MPW C compiler will actually set up the global reference before the SetA5 call, so accessing the global accesses some unknown part of memory. This is legal compiler optimization behavior! If GetA0 and SetA5 were functions or traps, the bug would disappear, but since they’re declared inline the compiler doesn’t feel compelled to delay the evaluation of the global array reference. The solution is to set up A5, then call a different routine that does the global reference.Now in this case, how do you think we — the debugging gods — figured out the bug? We tried the first few things we could think of; but then when we weren’t making headway after a few probes, we didn’t just sit there and suffer in silence, banging our heads against the proverbial wall. We called in some Smart Friends! The veil of illusion was torn from our eyes, and we were shown the heart of the truth (in other words, one of them had seen this bug before). The point is that in debugging, two (or more) heads are far, far better than one. Bugs are not like germs: when you share them, everyone benefits. Maybe your very own Smart Friends have had asimilar bug before, so they’ll recognize immediately what’s going on. Or maybe they’ll think of something different to try. At the very least, they’ll temporarily divert you from your frustration, maybe make you feel less stupid, and then you can all go out for pie together.That’s it!Add these tools to your arsenal of bug sprays and foggers. Use them all and use them well, and you, your code, and your customers will be far better off.FURTHER READINGBedside books for the serious student of debugging:•    How to Write Macintosh Software,  3rd ed., by Scott Knaster and Keith Rollin (Addison-Wesley, 1992).•    Macintosh Programming Secrets, 2nd ed., by Scott Knaster and Keith Rollin (Addison-Wesley, 1992).•    Debugging Macintosh Software with MacsBug by Konstantin Othmer and Jim Straus (Addison-Wesley, 1991).•    MC68000 Family Programmer’s Reference Manual  (Motorola, Inc.).THE VETERAN NEOPHYTE     TOWER OF BABBLE    DAVE JOHNSON I recently started learning MacApp. (I know, I know, I can see you shaking your great shaggy collective head, chuckling to yourself, asking where I was three years ago when MacApp was still news. Let’s just say I’m a late bloomer.) People weren’t kidding when they said that the learning curve is long and steep. They also weren’t kidding when they said that it’s absolutely worth it.For me, it was a double whammy: learning MacApp and transitioning from THINK C to MPW. (See, if I’d only learned it in the MacApp 2.0 days I could have used THINK Pascal, but noooo, I had to wait till now.) I’ve been using THINK C for virtually all my programming since 1986 or so. Using MPW for my own little exploratory projects would be like calling in a highly trained, ultramodern, rapid-deployment mobile emergency medical team to remove a splinter from my thumb. The job would get done, and beautifully, but it’d be an absolutely colossal waste of time, effort, and expense. Frankly, I’d rather just have a good pair of tweezers.But alas, if I want to use MacApp (and I do!) the days of coding on my PowerBook 100 in the backyard with loyal hounds lolling at my feet are gone for good. Now I need 16 MB of RAM minimum and at least 40 MB of hard disk space (120 to be really comfortable). And I’m not even going to mention MacApp compile times; it hurts me too much.    But all that’s really just logistics and can be gotten used to pretty quickly. The real difference is in the very nature of my interaction with the machine: It used to be that when I’d think of something that needed doing, I’d just go do it. It was like building a machine from scratch, piece by handcrafted piece. Now, using MacApp, when I think of something that needs doing I conduct massive, cross-referenced searches through megabytes of source code to figure out where it’s already been done, because no doubt somebody already thought of it, or something very much like it, and implemented it better than I ever could. It’s as though I’m running around on top of a giant, humming machine that stretches to the horizon on all sides, hunting for just the right place to reach down into the dark recesses, pull up a live, vibrating cable, and splice in my little special-purpose unit. Often I’ve spent an hour hunting around for the right place to insert some code, only to discover that to do what I want I just need to set the value of some out-of-the-way Boolean deep inside an object’s remote ancestor.Well, I could ramble forever about my learning experiences, but those of you who’ve been there know all about it, and those of you who haven’t probably don’t want to hear it. But this is the first time since I discovered the Macintosh and switched from FORTH to C that the feel of programming has been completely transformed for me. It occurred to me that the fact that programming is the kind of thing that can have a feeling to it is noteworthy.Programming computers is an activity unlike any other. It’s a human-machine interaction, but because the machine is very special, interacting with it is also very special. Programming has a depth that other machine interactions don’t, so it can assume qualities not normally associated with the operation of machinery. It can be a creative act, akin to building an intricate, glittering crystal clockwork out of gossamer strands of pure thought; and it can also be formidable drudgery, a mountain of mind-numbing details, endless in their intricacy, interrelatedness, and total irrelevance to the real task at hand. These are not normally the kinds of    things you’d say about operating your dishwasher or toilet.Computers are something truly new on earth. They’re machines that can simulate any other machine; they’re somehow potentially every machine in one. A well-known computer luminary put it this way:It [the computer] is a medium that can dynamically simulate the details of any other medium, including media that cannot exist physically. It is not a tool, although it can act like many tools. It is the first metamedium, and as such it has degrees of freedom for representation and expression never before encountered and as yet barely investigated.— Alan Kay, “Computer Software,” Scientific     American, September 1984.Other machines are physical extensions of ourselves; they let us sense and manipulate our physical world with more power and flexibility than we can by ourselves. But they’re just physical extensions. Computers, though, manipulate and embody abstractions and symbols; they operate on patterns of electrical activity, on imagination, on mindstuff. If you can imagine a machine or a medium in detail, you can program a computer to simulate it. So programming computers is much, much more than telling them what to do  — it’s telling them what to be. Of course, all this philosophical and poetic mumbo-jumbo crashes to the ground when faced with reality. Try telling my friend Michele — who wrote an entire book on her Macintosh SE and just recently realized that she can use Standard File dialogs to navigate her hard disk — that her computer “has degrees of freedom for representation and expression never before encountered.” Yeah, right. Admittedly, the computer is much more fluid-seeming to programmers than to users (someday, hopefully, a moot distinction), but there’s still a large discrepancy between the promise and the realization. Computers still feel more like erector sets — lots of hard, inflexible little parts — than like clay.    Boiled down to its thick, syrupy essentials, computer programming is quite simply the creation and communication of detailed instructions. The creation is the really exciting part, and is (or should be) the main task. But the communication is what really defines the experience of programming; it’s the part that has a feel to it.All this touchy-feely talk smacks of natural language. Are programming languages really just another class of natural languages? Is that why programming can feel so rich? I found a great book that addressed this very question (among others): The Cognitive Connection by Howard Levine and Howard Rheingold.Programming languages and natural languages do indeed have deep similarities, and share essential features found in any language. They’re both sets of abstract symbols that have meaning only by mutual agreement between communicating parties. They’re both open-ended: they have an underlying structure and system of rules that allow an infinite variety of correct sentences to be constructed. (Even more remarkably, any correct sentence can later be deciphered by anyone who knows the language, even though they’ve never seen that sentence before.)Linguists say that a language has three parts: phonology, syntax, and semantics. Phonology is the way a language is turned into sounds, and is irrelevant to programming languages since they’re never spoken. Syntax is the set of rules that specify how the parts of the language — words and phrases — are put together to form sentences. Programming languages obviously have strict and unforgiving syntax. But syntax by itself is an empty shell, telling us only whether a sentence is well formed, not what it means. That’s the function of semantics.Ah, sweet semantics! This is where the rubber meets the road, linguistically speaking, and where significant differences between natural languages and programming languages begin to appear. Howard and Howard illustrate one big semantic difference between natural languages and programming languages     by comparing their dictionaries. (Dictionaries are, in a sense, the embodiment of a language’s semantics.)Natural language dictionaries are written in natural languages, so the language must be rich and flexible enough to describe itself. When you look up an English word in Webster’s, you get a definition written in English. This is only possible because words in natural languages can have more than one meaning. Programming language dictionaries, on the other hand, are never written in a programming language. When you look up the definition of a Pascal word, the description is written in English (or Portuguese or Swahili or whatever), not Pascal or C++ or LISP. Unfortunately, the duplicity of meaning that allows a natural language to describe itself opens the door to paradox and self-contradiction, something programming languages can’t tolerate.But there’s another, even more apparent semantic difference between programming languages and natural languages. As the Howards so aptly put it:. . . although philosophers and linguists have struggled for centuries to give precise meaning to the word “meaning,” you don’t need a degree in either discipline to realize that what constitutes meaning for a programming language is dramatically different from what constitutes meaning for a natural language.Semantically, programming languages are only a sort of horribly stunted subset of natural languages, because the world they describe — the operations of computers — is only a sort of horribly stunted subset of the natural world. So “conversations” in a programming language aren’t conversations at all; they’re one-sided and one-dimensional commands whose conversational interest is on a par with the instructions on the back of a shampoo bottle: Lather, rinse, repeat.We are, of course, in the infancy of our relationship with computers, still drooling and babbling experimentally most of the time. Look at MacApp:     compared to other available methods of programming the Macintosh, it’s astoundingly elegant and streamlined, but even MacApp’s most vocal devotees don’t want to stop there. Far from being the end product of the evolution of programming, MacApp is only one of the first teetering steps toward more natural and more fluent communication with computers.A big question is whether our interactions with computers will ever be totally fluent, where fluency means the complete subsumption of syntax, so that we can go directly from meaning to expression with no conscious effort. Some people insist it will happen, that there’s a future of instant, effortless communication with computers, a wide and crystal clear pathway between us and them, but somehow I can’t buy it. I suspect that instead, computer communication will just get more and more like natural communication.Fraught with misunderstanding and misinterpretation, blocked by its implicit awkwardnesses and incompleteness, human language is nevertheless rich beyond depth. Its infinite flexibility allows it to carry and contain the full spectrum of human thought and feeling, and provides a ground for endless creativity. Indeed, there is an intense joy to using language — any language — well. If we get only half as far with our computers as we have with our words, we’ll have come a very long way indeed.    RECOMMENDED READING    •    The Cognitive Connection by Howard Levine and Howard Rheingold (Prentice-Hall Press, 1987).    •    Scientific American, September 1984.    •    The Happy Birthday Present  by Joan Heilbroner, pictures by Mary Chalmers (Harper & Row, 1962).    ADVENTURES IN COLOR PRINTINGDAVE HERSEYAlong with Color QuickDraw came the need for applications to support printing of pixMaps. Users need (and expect) to be able to produce realistic hard copies of their color screen displays. The challenge for developers is to ensure high-quality output regardless of the printing configuration being used. This article and its accompanying sample programs show you how.Consider a 24-bit color image we’ve just scanned in. We’d like this image to print in color on all color printers, whether they’re color LaserWriters, ImageWriters with color ribbons, or color ink jet printers. Similarly, we’d like to generate output that represents the source image as closely as possible when we’re using grayscale printers such as the LaserWriter IIg with PhotoGrade, or monochrome printers such as LaserWriters without PhotoGrade, StyleWriters, and ImageWriters with black ribbons. And, of course, we’d like our images to look great even when the user has chosen black-and-white printing on a color-capable printer. The challenge of producing high-quality output regardless of the printing configuration should ideally be handled at the driver level, through new printer drivers or solutions such as ColorSync or QuickDraw GX. But until every system makes use of these new technologies, we’re stuck with the task of working around the pitfalls of the present printing architecture. The key is to determine the printing configuration we’re working with and then supply the routine that ensures the highest-quality output in that particular case.This article and the sample code that accompanies it on the Developer CD Series disc will show you how to print pixMaps (or pictures containing pixMaps) faithfully on any printer by building in a combination of approaches to cover all cases. The results will be far better than any you can get by a “one size fits all” approach. I’ll discuss how to make use of Color QuickDraw when a printer driver can support it, how to render color images with original QuickDraw on printers whose drivers don’t support Color QuickDraw (such as the ImageWriter), and how to convert color images to high-resolution halftone images for printing on monochrome printers. The methods in this article apply equally well to PostScript and QuickDraw printers, and they work correctly whether or not the new printing solutions are in place. Note, however, that without some extra work (see the end of this article) these methods may not be optimal for printing pictures that contain text. When text is converted to pixMaps, all of the font information is lost, and the result can often be chunky, poor-quality text that’s hard to read. All of the techniques described here require you to have 32-Bit QuickDraw available. This covers any Macintosh with 32-Bit QuickDraw in ROM and any machine with Color QuickDraw in ROM that either is running System 7 or has the 32-Bit QuickDraw INIT installed. If you have only Color QuickDraw available (the version that predates 32-Bit QuickDraw), you can still use all of the techniques described here as long as you implement a GWorld structure and replacements for the calls OpenCPicture, NewGWorld, DisposeGWorld, and CopyBits with ditherCopy mode. Methods to apply when Color QuickDraw is not available are discussed in “Making the Most of Color on 1-Bit Devices” in develop Issue 9. Together, the present article and the article in Issue 9 give you solutions that cover printing in any situation.The “one size fits all” approach: A Bad IdeaMany applications today that deal with pixMap images don’t worry about addressing all the possible variations in printing configurations. This is unfortunate because the “one size fits all” approach can severely limit an application’s potential. Under the current printing architecture, if you provide just one printing method in your application based on assumptions about the printing configuration most likely to be used, you’re bound to frustrate and annoy some users. For example, imagine a user with a color laser printer who for some special purpose wants to print a color image in black and white. If your application has failed to take this printing possibility into account, the user will end up with a hideous Black Blob that looks nothing like the original. Or picture a user with an ImageWriter who decides to invest in a color ribbon so that she can print color images with her favorite paint program, only to discover that because the program doesn’t provide for this possibility, the result is — you guessed it — a hideous Black Blob. Or consider the users who find that documents containing color images that print just fine on their LaserWriters at work, print terribly on their StyleWriters, ImageWriters, or Personal LaserWriters at home. These frustrated users will end up clogging your customer service hotline with the kind of calls you don’t want to get. The moral of the story is that under the current printing architecture it’s not enough to provide just one method to print your images.Far superior to the “one size fits all” approach is the strategy of providing printing routines to address the whole range of printing configurations your application might encounter. Then all your application has to do at print time is to determine which printing configuration it’s dealing with and provide the appropriate printing routine. That’s what this article is about. We start by looking over the possible printing configurations; then we consider routines to address each of these configurations; and finally, we look at how an application can determine which printing configuration it’s facing..The possible printing configurationsWhen you’re printing from the Macintosh, there are three distinct types of printer drivers that you might encounter:•    Printer drivers that support Color QuickDraw calls. For example, the LaserWriter driver 6.0 and later in Color/Grayscale mode, printing to color, grayscale, or monochrome laser printers; and drivers for a number of third-party color laser printers, ink jet printers, film recorders, and so forth.•    Drivers for color-capable printers that don’t support Color QuickDraw calls or data structures. For example, the ImageWriter drivers through version 7.0 printing to an ImageWriter with a color ribbon installed.•    Drivers for monochrome printers that don’t support Color QuickDraw calls or data structures. For example, the ImageWriter drivers through version 7.0 printing to an ImageWriter with a black ribbon installed, the StyleWriter using the 7.2.2 driver, and laser printers using the LaserWriter driver 5.2 (or 6.0 and later in Black & White mode).Note that what matters to you isn’t the printer being used, but the printer driver. Thus, for example, if you print Color QuickDraw to a LaserWriter IInt using the version 5.2 driver (which doesn’t have the Color/Grayscale option), you’ll end up with nothing but stark black shapes because there’s no Color QuickDraw support in the driver. The same printer using the 7.0 driver with the Color/Grayscale option selected will produce excellent results in response to the very same drawing commands — same printer, but totally different results depending on the driver. Another good example is the ImageWriter. Versions of the ImageWriter driver through version 7.0 don’t support Color QuickDraw calls, but there are third-party drivers for the ImageWriter that do. Note also that in the category of drivers that support Color QuickDraw calls, no distinction needs to be made between grayscale and color printers. Based on your experience with Color QuickDraw on the screen, you might have the impression that a color image should be converted to a grayscale image before printing to a noncolor device, or that you need to get the printer port’s color table, GDevice, or bit depth, and map your images to those before printing. But in fact, this is not only unnecessary but also undesirable in the printing environment. If the driver supports Color QuickDraw, you don’t need to worry about whether your images will be printing on a color or a grayscale printer.About printer driver ports and color quickdraw supportWhile I’ve categorized printer drivers by whether or not they support Color QuickDraw, what we’re really concerned with is whether they give us a cGrafPort or a grafPort to draw in. The port I’m referring to here is the TPPrPort that the driver returns to the application through PrOpenDoc. Printer drivers that give us a cGrafPort support Color QuickDraw calls, because a cGrafPort is capable of handling multibit pixels. On the other hand, printer drivers that give us a grafPort don’t support Color QuickDraw calls.Drawing with Color QuickDraw in a grafPort, while possible, will yield disappointing results. Consider what happens if you try to CopyBits a 24-bit-deep image to the ImageWriter (assuming you’re not using ditherCopy mode in System 7). Since you’re copying to a driver port that’s capable of only two colors, every one of the pixels in your image will become either your foreground color or your background color, whichever its value is closest to. In the usual case of a black foreground and a white background, you’ll end up with the Black Blob effect — all colors with luminance values of at least 50% black draw black and everything else draws white.Although the situation is improving, at present most of the drivers that Apple ships return grafPorts. (See “The Story Behind Color QuickDraw Support” for the whys and wherefores.) The LaserWriter drivers version 6.0 and later are capable of providing a cGrafPort for your application to draw into, but note that if the user selects Black & White mode in the color LaserWriter driver’s print job dialog, even that driver returns a grafPort; a cGrafPort is returned only when the user has chosen Color/Grayscale mode.Let me warn you up front that the printer driver port isn’t necessarily a true cGrafPort or grafPort — that is, one that’s valid outside the context of the Printing Manager. In the case of Apple’s printer drivers, it never is. The fact is that drivers have a lot of leeway when it comes to the port structure they return. Since the driver needs to replace the port’s QuickDraw bottleneck procedures in order to direct the data to a printer, there’s no need for many of the fields that you would use if you were drawing to a true grafPort or cGrafPort, such as a window on the screen. In fact, when you make a call likeCopyBits(&bitMap, &printPort->gPort.portBits, &srcRect, &destRect,    srcCopy, nil);the data most likely won’t even end up in the driver port’s bitmap. In fact, the bitmap structure may not even exist. There’s no need for it to. All that matters is that as youTHE STORY BEHIND COLOR QUICKDRAW SUPPORT    So why is it that the LaserWriter didn’t support cGrafPorts until the 6.0 LaserWriter driver? And why is it that the 7.0 ImageWriter driver still doesn’t support cGrafPort printing? The first answer is simple. Color QuickDraw didn’t exist when the LaserWriter driver was created back in 1985. It wasn’t until 32-Bit QuickDraw came on the scene that the driver was revised to support color/grayscale printing. Since the driver wasn’t originally designed with Color QuickDraw in mind, this support represented major changes to the source code. As such, it took until version 6.0.2 for most of the glitches to be worked out. Even today, the LaserWriter driver is essentially an old-style QuickDraw driver with Color QuickDraw support patched in.    The ImageWriter driver never was revised, except to add color tables to the print job dialogs in the 6.1 version. Why wasn’t the driver revised? Well, for the ImageWriter driver to fully support Color QuickDraw, it would essentially need to be rewritten. Since there’s been no overwhelming demand and since color printing solutions are available via the color LaserWriter driver and third-party printers and drivers, no one has rewritten the driver to provide color support.At some point in the future, all of Apple’s printer drivers will support color QuickDraw calls. But for now, applications should be aware that a printer driver returns either a cGrafPort or a grafPort, and it’s the application’s responsibility to “do the right thing” regardless of the port type.    draw into the grafPort or cGrafPort, your drawing commands are intercepted, possibly translated, and then redirected to the printer.So don’t assume that the printer driver’s port is a true grafPort or cGrafPort, or that the values therein have anything to do with how your image will print. You should view the printer driver’s port as a private structure, with the only public fields being the actual pointer to the grafPort or cGrafPort (your TPPrPort pointer) and its port’s portBits bitmap. Even then, SetPort and CopyBits are the only calls you should pass those values to.The problem at handTo get back to the problem at hand, we need printing routines to address each of the three possible printing configurations. The rest of this article is devoted to describing those routines and outlining how to determine at print time which routine is appropriate. The routines are demonstrated by four samples in the Adventures in Color Printing folder on the Developer CD Series disc. Note that all the samples implement the technique of loading and storing print records from job to job. All printing applications should implement some sort of handling like this so that when users attempt to print documents, their last used settings are available, rather than the driver’s defaults. All samples work under System 6 or 7. Remember that to use the methods described here, you must have 32-Bit QuickDraw available, or if you have only Color QuickDraw (the version that predates 32-Bit QuickDraw) available, you must implement a GWorld structure (which is the same thing as a cGrafPort) and replacements for the calls OpenCPicture, NewGWorld, DisposeGWorld, and CopyBits with ditherCopy mode. Printing with Color QuickDraw SupportThe easiest color printing situation you’ll come across occurs when a printer driver gives you a cGrafPort to work in. To generate the best results we first need to deal with setting the resolution and scaling the image. Then we want to band our image through a 32-bit-deep GWorld to avoid the potential problem of operator incompatibility. The Color Adventures sample code demonstrates how we go about this. As mentioned earlier, grayscale printing in a cGrafPort shouldn’t be treated any differently from color printing in a cGrafPort.setting resolution and scaling the imageWhen we print an image, a couple of different scaling operations are involved. First, our application sets the printer driver port’s resolution and, if necessary, scales the image to that resolution; then the printer driver scales the image to the device’s physical (output) resolution during printing. The amount an image is scaled when copied to the printer port is calculated as follows:scaleAmt = (sourceDPI / destinationDPI) * (scaling factor from Page Setup dialog)To achieve the highest-quality output, our image’s resolution should ideally be the same as the printer’s physical resolution. If our image’s resolution doesn’t match the printer’s resolution, we can scale the image before printing, change the port’s resolution to match the image resolution, or do a combination of both (scale the source image and the port). Here’s how we proceed: First, we need to know the resolution of our source image. Most PICT files on the Macintosh are rendered at 72 dpi, but that needn’t be the case, and in the case of scanned images is actually rather unlikely. The GetImageRes routine in the Color Adventures sample shows how to find the resolution of any PICT. If the OpenCPicture call was used to create the picture, the resolution information is stored right in the picture header for easy retrieval. Otherwise, we need to determine the resolution by parsing the picture.Once we have the image resolution, we need to know how close the printer can be set to that resolution. We can determine the supported resolutions for a particular printer using PrGeneral, as discussed in the article “Meet PrGeneral” in develop Issue 3 and in Inside Macintosh Volume V. As noted in those sources, when we call PrGeneral with the GetRslData opcode, drivers that support PrGeneral will return alist of discrete resolutions and possibly a range of supported resolutions that we can also specify.So, for example, if PrGeneral told us that we were capable of printing our 300-dpi image at 300 dpi, we would set the printer port’s resolution to 300 dpi x 300 dpi by using PrGeneral with the setRsl opcode. Then all we’d need to do would be to draw the image at its original size. That’s the easy case. If we’re printing to a device none of whose supported resolutions match our image’s resolution, the best choice is usually the pair of horizontal and vertical resolutions that when multiplied yield the largest product. We’ll need to scale the image to that resolution before printing. While this method of choosing resolutions isn’t foolproof, it should typically give us the best results. Of course, if someone comes out with a driver for a printer that supports a resolution pair such as 600 dpi x 72 dpi, where there’s a big difference between the horizontal and the vertical resolution, there might be problems with such an approach. Many times, we’ll want the horizontal and vertical resolutions to be equal. The section on setting resolution under “Printing in Black and White” later in this article discusses this further.We’ll probably also want to put a ceiling on the resolution of the printer port. Otherwise, if we’re printing to a Linotronic we may have to scale our 72-dpi images up about 3528 percent to 2540 dpi, and that will take a long, long, long time to print and require an enormous amount of memory. Of course there may be times when 2540 dpi is exactly what we want. We can always provide the user with a list of supported output resolutions to choose from.Finally, suppose that we can’t set the printer resolution because we’re using a driver that doesn’t support PrGeneral. We can tell this because after our call to PrGeneral, ResError is set to resNotFoundErr. In this case, we have only one recourse — to scale the image to the port’s default resolution, 72 dpi.Putting all this together, we end up with the GetBestDPI routine in the Final Adventure sample for setting the best resolution with PrGeneral. GetBestDPI obtains the best horizontal and vertical resolutions to use for printing with the selected driver. The function looks like this:void GetBestDPI(short *pxDPI, short *pyDPI, short xDPI_ceiling,                                short yDPI_ceiling, Boolean wantSquareDPI);The caller places an ideal resolution pair (what the caller really wants to use) in the parameters pxDPI and pyDPI. This is also where the routine returns the resolutions it decides on. In xDPI_ceiling and yDPI_ceiling, the caller places the maximum resolution desired in either direction. For example, if you didn’t want values larger than 300 dpi returned, you’d put 300 in both of these parameters. If wantSquareDPI is true, only square resolutions (those with equal horizontal and vertical components) will be considered. The printer driver is expected to be closed upon entry to this routine and is therefore opened and closed around the PrGeneral code. If PrGeneral isn’t supported by this driver, or if an error occurs, the routine returns 72 x 72 dpi, which is the default for Macintosh printer drivers. If the ideal resolution the caller passes in is available, we choose that, ignoring wantSquareDPI, xDPI_ceiling, and yDPI_ceiling. We figure that the calling routine knows more about the ideal resolution it requests than we do. Here’s the code:void GetBestDPI(short *pxDPI, short *pyDPI, short xDPI_ceiling,                        short yDPI_ceiling, Boolean wantSquareDPI){    TGetRslBlk        getResRec;    Boolean            exactMatch = false;    short            bestResX, bestResY, xDPI, yDPI,                        desiredResX, desiredResY, rec;    // Open the driver for our PrGeneral call. Assume we'll return 72 x 72// dpi until we find otherwise, and also store the desired resolution // that the caller passed to us through the pxDPI and pyDPI parameters.    PrOpen();    bestResX = bestResY = 72;    desiredResX = *pxDPI;    desiredResY = *pyDPI;        if (!PrError())    {// Ask PrGeneral for the resolution records for this driver.        getResRec.iOpCode = getRslDataOp;        PrGeneral((Ptr) &getResRec);        if ((!ResError()) && (!getResRec.iError))        {// First check for the exact resolution pair that the caller requested.// To begin with, check the range of resolutions supported to see if the// pair is within that.            if ((getResRec.xRslRg.iMin <= desiredResX) &&                    (getResRec.xRslRg.iMax >= desiredResX) &&                    (getResRec.yRslRg.iMin <= desiredResY) &&                    (getResRec.yRslRg.iMax >= desiredResY))                exactMatch = true;// If we didn't find an exact match, check the driver's discrete// resolutions to see if we have one there.            for (rec = 0; (!exactMatch) && (rec < getResRec.iRslRecCnt);                    rec++)                if ((getResRec.rgRslRec[rec].iXRsl == desiredResX) &&                        (getResRec.rgRslRec[rec].iYRsl == desiredResY))                    exactMatch = true;// If we found an exact match, use it. Otherwise, loop through each// resolution record and find the one that best matches our// criteria.            if (exactMatch)            {                bestResX = desiredResX;                bestResY = desiredResY;            }            else                for (rec = 0; (rec < getResRec.iRslRecCnt); rec++)                {                    xDPI = getResRec.rgRslRec[rec].iXRsl;                    yDPI = getResRec.rgRslRec[rec].iYRsl;                        if ((xDPI <= xDPI_ceiling) && (yDPI <= yDPI_ceiling) &&                            (!wantSquareDPI || (xDPI == yDPI)) &&                            ((xDPI * yDPI) > (bestResX * bestResY)))                    {                        bestResX = xDPI;                        bestResY = yDPI;                    }                }        }    }        // Return the best resolution pair we found and close the driver.    *pxDPI = bestResX;    *pyDPI = bestResY;    PrClose();}The following code returns a rectangle to use when scaling from an image’s bounds (srcRect) and resolution (ixDPI, iyDPI) to a printer port’s resolution (pxDPI, pyDPI). The resulting rectangle (scaleRect) will have a top left corner of (0, 0).void GetScaleRect(Rect *srcRect, short ixDPI, short iyDPI, short pxDPI,                         short pyDPI, Rect *scaleRect){    Fixed        scale;    *scaleRect = *srcRect;    OffsetRect(scaleRect, -scaleRect->left, -scaleRect->top);    scale = FixRatio(pxDPI, ixDPI);    scaleRect->right = FixMul(scale, (long) scaleRect->right <<16) >>16;    scale = FixRatio(pyDPI, iyDPI);    scaleRect->bottom = FixMul(scale, (long) scaleRect->bottom <<16) >>16;}Banding the image through a GWorldPictures can include information that a printer driver can’t understand, such as transfer modes and structures that have been added to the system since the driver was developed, and sometimes a driver can’t reproduce certain operations that work great on the screen. For example, PostScript doesn’t understand the concept of transfer modes, so the LaserWriter driver doesn’t know what to do when it encounters such modes as blend, ditherCopy, and addMin. Aside from transfer modes, certain QuickDraw operations aren’t supported by all drivers. For instance, CopyMask doesn’t work with any of Apple’s printer drivers as of this writing. The upshot is that if you only use DrawPicture, some pictures are bound to print incorrectly on various printers because of operator incompatibility. The PICT named Incompatibility Test in the sample code folder demonstrates this problem. Try printing the picture with TeachText and comparing the output to the screen image. A safer approach to printing an image (although one that may require more data to be sent to the printer and thus result in slower printing) is to always send 32-bit-deep data to the printer by banding the image through a GWorld. Of course, if you know your application never needs 32-bit pixMaps, you can just use a GWorld deep enough for the data you’ll be printing.Here’s how it works: Create a 32-bit-deep GWorld that has room for one horizontal (or vertical) strip of data of some arbitrary size. In the following example, we use horizontal strips. Call SetGWorld on this GWorld and then DrawPicture, passing the full image’s picFrame. All of the picture outside the banding GWorld’s bounds rectangle is clipped. The code might look like this:.#define BAND_HEIGHT 144        // 2 inches at 72 dpi.pictRect = (*imgPICT)->picFrame;bandRect = pictRect;bandRect.top = 0;bandRect.bottom = BAND_HEIGHT;err = NewGWorld(&bandGWorld, 32, &bandRect, nil, nil, 0);if (err == noErr){    SetGWorld(bandGWorld, nil);    destPix = GetGWorldPixMap(bandGWorld);    LockPixels(destPix);    DrawPicture(imgPICT, &pictRect);    UnlockPixels(destPix);}This results in a band of the original picture being drawn to bandGWorld, which in turn can be copied to the printer port, like so:SetPort(&(printPort->gPort));srcPix = GetGWorldPixMap(bandGWorld);LockPixels(srcPix);CopyBits((BitMap *) *srcPix, &(printPort->gPort.portBits), &bandRect,             &bandRect, srcCopy, nil);UnlockPixels(srcPix);To create the next band, shift bandGWorld’s bounds rectangle down by one bandwidth and repeat the process. For best results, you may want to increase the printer port’s resolution with PrGeneral, draw into a GWorld of the same resolution, and then use CopyBits to draw that in the printer port.When you’re working with 32-bit images, it’s very useful to implement some sort of banding or picture spooling algorithm, since 32-bit images take up an enormous amount of memory, especially when you need to scale them to higher printer resolutions. All of the program samples on the CD have routines that implement banding and spooling. These routines also handle the special problems introduced when you need to dither and scale during banding.When you send 32-bit-deep data to the printer driver, you inadvertently solve another problem as well — worrying about the printer’s output characteristics. Printing images as 32-bit deep will give you the best output on all color printers whose drivers return a cGrafPort. You can be sure that when you send 32-bit-deep data the driver and printer will do the right thing — either print the image 32 bits deep or map it to the device’s characteristics, be it an 8-bit device or whatever. You don’t need to worry about checking the depth of the printer port or getting its GDevice or color table, which would be futile anyway since the port probably isn’t a true cGrafPort.Of color tables and the LaserWriter Driver    A word to the wise: The LaserWriter driver changes your image’s color table. You must be prepared for this and know how to prevent its altering your printout.Suppose you have an 8-bit color image with a custom color table. What happens when you print this with the LaserWriter driver using CopyBits when Color/Grayscale is selected? The driver returns a cGrafPort at PrOpenDoc time. As the drawing begins, the driver makes a copy of your image’s color table. It then replaces the first entry in the color table with the current background color and the last entry with the current foreground color. Once the foreground and background colors have been placed in the color table, the driver sends the image to the printer, passing the indexed RGB value for each pixel.This means that if your foreground color is not the same as your last color table entry, or your background color is not the same as your first entry, your image may be altered when it prints. The best way to avoid this problem is to keep white in the first color table entry and black in the last, and make sure to set the foreground color to black and the background color to white before drawing.Because the driver alters your color table, it’s not a good idea to invert an image by inverting its color table, as    some applications do. Imagine that you have an 8-bit grayscale image of a scanned photograph. Let’s say that you want to print an inverted copy of the image and that its color table is a linear ramp of grays, from white to black. The easy — but incorrect — approach is to invert the entries in the image’s color table and then print the image. The correct approach is to use CopyBits to copy the image over itself using notSrcCopy made before printing.Figure 1 compares printouts of an image inverted correctly and incorrectly. Notice that the incorrect method hasn’t inverted absolute (or pure) black or white pixels in the image.Why does the driver alter your color table? Because it’s attempting to perform bitmap colorization. This is a feature of CopyBits that’s not very well documented and that the LaserWriter driver supports. The version of CopyBits in System 7 will actually colorize an entire pixMap, although the LaserWriter driver has never been upgraded to support this functionality. The improvements to CopyBits colorizing are discussed in “QuickDraw’s CopyBits Procedure: Better Than Ever in System 7.0” in develop  Issue 6 and Chapter 17 of Inside Macintosh Volume VI.                                                 Original                                                       Inverted correctly                                           Inverted incorrectlyFigure 1Grayscale Image Inverted Correctly and Incorrectly    In general, if you don’t know whether an image is 32 bits deep or 8 bits deep, you should print it at 32 bits. This way, you won’t lose any color information. Of course, printing 32-bit-deep images means increased printer data and print times, so you may want to let the user have some control over the decision. Getting the best output may not be as important to a user as seeing an 8-bit draft of the image sooner. Printing in color on the imagewriterMost printer drivers today have been updated to return cGrafPorts when color ink is used. The only exception to this rule that I know of is the ImageWriter driver. Because all Apple ImageWriter drivers through version 7.0 return a grafPort, we can’t rely on Color QuickDraw calls and structures to give us accurate color images when we have a color ribbon installed. We can draw only eight colors into a grafPort (traditionally called “the original QuickDraw colors”). Printing on the ImageWriter with DrawPicture works perfectly well as long as our picture is made up of original QuickDraw objects (those that appear in Inside Macintosh Volume I), each preceded by a call to ForeColor to set the foreground color to one of the eight original QuickDraw colors. For example, the following code will print correctly on an ImageWriter with a color ribbon, whether it’s simply sent to the printer port or enclosed in a PicHandle that’s then printed with DrawPicture: SetRect(&bounds, 20, 20, 120, 120);  // Initial object bounds (a square).BackColor(whiteColor);                      // Set background color to white.ForeColor(cyanColor);                      // Set foreground color to cyan.FillRect(&bounds, gray);                  // Fill square with 50% cyan pattern.OffsetRect(&bounds, 70, 70);              // Move down a bit.ForeColor(blackColor);                      // Select black.FrameRect(&bounds);                          // Draw a black square frame.ForeColor(cyanColor);                      // Select cyan.PaintOval(&bounds);                          // Draw a cyan circle in the frame. The result is shown in Figure 2. Without the calls to ForeColor, our picture would be recorded using our current foreground color for all objects. This is usually black and would cause everything to print as black.If we need to print Color QuickDraw objects on an ImageWriter with a color ribbon, we must first convert them to original QuickDraw objects. In the case of pixMaps, we convert all of the pixMap’s colors to the eight original QuickDraw colors and make a bitmap separation of the image for each color. The Color ImageWriter Adventures sample demonstrates how to do this.Converting to the Original QuickDraw ColorsFirst, possibly through banding, we use CopyBits to ditherCopy the source picture into a 4-bit GWorld whose color table is made up of the eight original colors. We Figure 2Product of Drawing With a Sequence of Calls to ForeColorobtain this color table by passing a value of 127 to GetCTable, as explained in Inside Macintosh Volume V, page 81.If we don’t use ditherCopy, the resulting output will have colors determined by threshold comparison. In other words, every color in the original will simply be mapped to one of the eight original QuickDraw colors. This method will make scanned images look fake or “painted,” which is not what we’re looking for. In most cases, we’d rather have a dithered image that approximates more than eight colors by putting different colors side by side. Since we’re printing only eight real colors, dithering is a necessity when using this method. For the curious, the Color ImageWriter Adventures sample allows you to turn dithering off for comparison.Making the separationsOnce our image has been copied to the 4-bit “original color” GWorld, we can start making our separations. We need a Color QuickDraw searchProc that returns the position indicator for black or white, depending on whether or not the color passed matches the color we’re looking for. If it does, the routine returns black. Since we’ll be copying to a bitmap (in which a 0 pixel value indicates the background color and a 1 pixel value indicates the foreground color), this is all the code it takes:pascal Boolean OQDSearch(RGBColor *anRGB, long *position){    *position = 0;            // Initially assume no color.    if ((anRGB->red == (*gOrgQDCTab)->ctTable[gCurColor].rgb.red) &&            (anRGB->green == (*gOrgQDCTab)->ctTable[gCurColor].rgb.green) &&            (anRGB->blue == (*gOrgQDCTab)->ctTable[gCurColor].rgb.blue))        *position = 1;        // Color it.    return true;                // To indicate that we've handled the color                                     // processing.}We’ll make seven separations (one for each of the eight original QuickDraw colors except white). The code that follows is adapted from the Color ImageWriter Adventures sample and stores the different separations in a picture that uses only original QuickDraw primitives, so it can be sent with DrawPicture to the ImageWriter driver’s grafPort with great results.The process goes like this: Once we have the dithered image in our 4-bit GWorld, we create a 1-bit GWorld using exactly the same dimensions. We’ll use this 1-bit GWorld to create our bitmap representations of each color separation. After setting the current GWorld to our 1-bit GWorld, colorSep, we call OpenPicture. This is critical because OpenPicture and OpenCPicture tie each open picture to the current port. (That’s why you can have multiple pictures open at once as long as they’re in different ports.) If we change ports, we can draw all we want and the calls will not be recorded into our picture. Only when we make the colorSep GWorld the current one will this picture’s recording be enabled. Very cool.PicHandle SeparateColors(PicHandle wPICT, Fixed scaleAmt,                                 Boolean useDither){    QDErr            err;    GWorldPtr        savedGW;    GDHandle        savedGDH;    PicHandle        sepsPICT = nil;    Rect                pictFrame;    GWorldPtr        OQDGWorld = nil;    PixMapHandle    srcPix, destPix;    GWorldPtr        colorSep = nil;    short            QDColor[7] = {blackColor, yellowColor, magentaColor,                                           redColor, cyanColor, greenColor,                                           blueColor};// Save the current GWorld and GDevice.    GetGWorld(&savedGW, &savedGDH);// Set our global color table to the eight original QuickDraw colors and// get the picture's frame.        gOrgQDCTab = GetCTable(127);        pictFrame = (*wPICT)->picFrame;// Create a 4-bit GWorld that uses the eight original QuickDraw colors.// If there are no errors, band the picture, using ditherCopy if desired // and scaling the amount we need to. The result is a representation of // the image in the eight original colors.        err = NewGWorld(&OQDGWorld, 4, &pictFrame, gOrgQDCTab, nil, 0);        if (!err) err = BandPicture(wPICT, OQDGWorld, scaleAmt, useDither);// Create a new 1-bit GWorld for the separations.        if (!err)        {            err = NewGWorld(&colorSep, 1, &pictFrame, nil, nil, 0);            // Set the current GWorld to the 1-bit GWorld and create a picture.// Note that this means that the picture is tied to the 1-bit GWorld.// Only when that GWorld is current will data be recorded into the // picture.            if (!err)            {                SetGWorld(colorSep, nil);                srcPix = GetGWorldPixMap(OQDGWorld);                LockPixels(srcPix);                destPix = GetGWorldPixMap(colorSep);                LockPixels(destPix);                ClipRect(&pictFrame);                sepsPICT = OpenPicture(&pictFrame);With the picture opened, the separations can be made. We go through each of the eight original colors (except white) and create a separation for that color. To do this, we set the current GWorld to one that’s different from our picture’s GWorld (to turn off recording). Next we install our searchProc and we CopyBits from the 4-bit GWorld to the 1-bit one. This gives us black bits only where the color in the original matches the current separation color. Then we delete the searchProc and set our current GWorld back to the 1-bit one. This reenables recording into our picture, and we record the foreground color for the current separation, followed by the separation’s bitmap using srcOr mode. After all seven passes have been completed, we will get a picture with seven separations in it, overlaying each other to make the composite, which will differ slightly from the original because we lose some information to dithering. (See Figure 3.) We use srcOr mode so that the white is transparent; otherwise the white for each layer would overwrite the color from the previous layer.                for (gCurColor = 0; (gCurColor < 7) && !err; gCurColor++)                {                    SetGWorld(savedGW, savedGDH);                    AddSearch(OQDSearch);                    CopyBits((BitMap *) *srcPix, (BitMap *) *destPix,                                 &pictFrame, &pictFrame, srcCopy, nil);                    DelSearch(OQDSearch);                                        SetGWorld(colorSep, nil);                    ForeColor(QDColor[gCurColor]);                    CopyBits((BitMap *) *destPix, (BitMap *) *destPix,                                 &pictFrame, &pictFrame, srcOr, nil);                }// Close the picture, restore our saved GWorld/GDevice, and dispose of our// GWorlds and the global color table. Finally, return the picture we// created.                ClosePicture();                SetGWorld(savedGW, savedGDH);                UnlockPixels(srcPix);                UnlockPixels(destPix);            }        }    if (gOrgQDCTab) DisposeCTable(gOrgQDCTab);    if (OQDGWorld) DisposeGWorld(OQDGWorld);    if (colorSep) DisposeGWorld(colorSep);    return sepsPICT;}After the seventh separation is made, we can jump into our print loop and print the image with DrawPicture. The result is a nicely dithered color image. For best results, we’d use PrGeneral to set the printer grafPort’s resolution higher than 72 dpi. In the case of a printer such as the ImageWriter, though, this has a tremendous performance hit. Here’s another good opportunity to provide some user interaction and let the user decide what to do, via a preferences setting or by adding an item to the print job dialog.GotchasThis method of printing a picture to an ImageWriter with a color ribbon will achieve great results without doing anything special. However, there are two gotchas with it.First, if you generate an image at a high resolution and export it to another application, the printing application needs to know to call PrGeneral to boost the printer port’s resolution. However, you can export the pictures at 72 dpi, use a picFrame that’s correct for 72-dpi display of the image, or use OpenCPicture to store the resolution in the picture. In any of those cases, DrawPicture will do the right thing with the picture, even though the application doesn’t. To see this, print out the sample PICT called Separations Test to a color ImageWriter using TeachText. TeachText has no special code to handle ImageWriter printing and yet it prints the PICTs generated by this method just fine. Pictures you create this way will print to a color ImageWriter from any application and can be pasted into word processors and such for color image output. Pretty neat, huh?                                Original    greenColor    cyanColor                                yellowColor    blackColor    blueColor                                redColor    magentaColor    CompositeFigure 3Seven Separations Created With Original QuickDraw for a Color ImageBut, unfortunately, srcOr mode doesn’t necessarily print well with all printer drivers. This means that these way-cool images may not print way-cool on printers other than ImageWriters. This isn’t a problem in the sample code because we use this method only if we’re printing on an ImageWriter. PICTs that are pasted into a document might be printed on any printer, however, so exporting these pictures could create more problems than it solves.For more details on how to do the separations, see the Color ImageWriter Adventures sample. The sample prints color pixMaps using this method and allows you to specify high-resolution or low-resolution output. I strongly urge you to print at least one of the sample images using the application in ditherCopy mode and specifying high-resolution output. The results may surprise you, as they did me.Printing in Black and WhiteWhen we’re printing pixMaps to a grafPort and the printer doesn’t have (or the user doesn’t want to use) color capability, we need to use dithering (or more precisely, a special kind of dithering called halftoning) to get any kind of decent output. In other words, we need to convert pixMaps to dithered bitmaps. The Halftone Adventures sample demonstrates three different dithering methods: the CopyBits ditherCopy method, the “true” halftone method, and the lazy person’s halftone method. Before we look at these, a note about resolution.setting ResolutionWhen printing halftoned images, it’s best to set the printer to a square resolution (equal horizontal and vertical dpi). The reason is that when we use mixed resolutions, our halftone matrix becomes distorted, and that can distort the printed image. This happens because dots that should be a fixed distance apart are now closer to each other in one direction than in the other. We can compensate for this distortion when we create our halftone matrix, but it’s likely to be a great deal of work, which is only marginally justified. All of the halftone routines in the sample code print using square resolutions. (They call the GetBestDPI routine described earlier with the wantSquareDPI parameter set to true.) The DitherCopy MethodThe ditherCopy method uses CopyBits to dither the image to a 1-bit GWorld at device resolution and print that. If you’re working with a device that has a low resolution (prints big dots) and a relatively constant physical dot size — such as the ImageWriter — then this method works fine. If, however, you’re printing to a device that has a high resolution and a variable pixel size (from device to device, or even within the same device across time or due to variations in amount and type of toner, humidity, and paper type), this method results in image distortion. Figure 4 was dithered to a LaserWriter using this method, and the resulting distortion is very noticeable.The distortion you see in Figure 4 is due to pixel error (the difference between the physical pixel drawn on the page and its size as the driver or rendering system models it). Since dithering must occur at device resolution, it’s hard to compensate for the device pixel error when a dithered image is printed. Halftoning, on the other hand, increases the size of each dot, negating the pixel error that occurs during printing. Thus halftoning results in better output on devices such as the LaserWriter. This phenomenon is discussed further in “Making the Most of Color on 1-Bit Devices” in develop Issue 9 and is one of the main reasons that just doing a straight dither is not acceptable for most cases. The ditherCopy method does, however, provide a good benchmark to judge the other methods against. Figure 4Distorted Sample Output From the ditherCopy MethodThe “True” Halftone MethodThe “true” halftone method is described in “Making the Most of Color on 1-Bit Devices” in develop Issue 9. You can read all about it there and try it out in the Halftone Adventures sample. Note that the routine in the sample code uses 8 x 8 halftones, but the algorithm described in the Issue 9 article is general and will work at any angle, any frequency, and any resolution. Also, since the sample’s routine accepts only 8-bit-deep and 32-bit-deep pixMaps, the source image is passed in as a 32-bit-deep pixMap. When you use this sample code, an image may take one to two minutes to render before being printed, but the code can be optimized to increase its speed. Figure 5 provides an example of the kind of output we can expect using this method.The Lazy person’s Halftone methodI came up with the lazy person’s halftone method to create fast “halftone-ish” output that looks very good and prints very fast. It works especially well on LaserWriters. Typical images render in 12 seconds or so (before printing), and I’m sure optimization would shorten this time. But note that this is not intended to be a general solution like the “true” halftone method; its usefulness is restricted to halftones at one angle, one frequency, and a square resolution.Strictly speaking, this isn’t halftone generation but rather halftone approximation with patterns. The difference is that in “true” halftoning, a halftone matrix is cookie-cuttered around the image, and adjacent pixels are taken into account when theFigure 5Sample Output From the “True” Halftone Methodhalftones are created. In this way, the appearance of strong patterns (such as vertical stripes) can be removed. With the method I propose, the output appears to be a 0° 4 x 4 halftone, not a 45° 8 x 8 as in the Halftone Adventures implementation of the true halftone method. While this approach doesn’t generate strong patterns, the absence of a 45° halftone is somewhat noticeable on lower-resolution printers like ImageWriters or those with drivers that don’t support PrGeneral (and therefore must be used at 72 dpi).Here’s how it works: First, we dither the original image to a 4-bit grayscale GWorld, at 1/4 the optimal printer resolution. This may mean stretching or shrinking the original image. Next we find out how much of the printed image will fit on the paper. We use this information to limit the amount of data we’re working with to just the pixels that will end up on paper. If the image extended 5 inches off the right edge of the paper, for example, it would be a waste of time to process that extra 5 inches. Once we have the dithered data and the bounds we’re working with, we create a 1-bit GWorld that’s four times as big as the 4-bit one. (This also means that it’s at our printer port’s resolution.) Going through the source (4-bit) image one pixel at a time, we create the halftoned output by matching up each pixel’s index value with one of the patterns shown in Figure 6 and drawing that 4 x 4 pattern in our 1-bit GWorld.For example, if we find a pixel has the index value of 8, the pattern with 8 dots in it is used. With 4 x 4 patterns, we could actually create 17 unique patterns (counting the pattern created when no dots are used). However, this wouldn’t be helpful since ourFigure 6The Patterns Used to Approximate Halftonesimage has only 16 shades of gray in it. Therefore, we ignore one, and I chose to drop the pattern for 15. (The pattern designated 15 is really one for 16.) The reason for using the pattern for 16 in the 15 spot is that black in our image will have a value of 15, and we want to make sure that black pixels are rendered as totally black patterns. Otherwise, the resulting image would have no solid black in it.Once the entire image has been halftoned, we just CopyBits it to the printer port. Figure 7 provides an example of the kind of output we can expect using this method.This method works especially well when we’re printing at a high resolution. On the LaserWriter at 300 dpi, for example, the 4 x 4 patterns are so small (1/75") that they appear as a single dot. It’s hard to believe that the output in Figure 7 was printed in just black! As you can see by comparing this output to the halftone output in Figure 5, there’s very little difference between the two, and for speed considerations, the lazy person’s method may be a viable alternative.Detecting the Printing ConfigurationWe now have the methods that enable us to obtain high-quality output from the whole range of possible printing configurations when we print pixMaps. All we still need is a way to decide which method to use at print time. Figure 7Sample Output From the Lazy Person’s Halftone Method To make this decision, we need to determine only three things:•    Do we have a cGrafPort or a grafPort?•    If a grafPort, is this an ImageWriter?•    If an ImageWriter, is a color ribbon installed?That’s it! These things can be determined in ways that will be compatible now and in the future. Let’s take a quick look at the questions and how to determine their answers.Do we have a CGrafPort or a GrafPort?We can determine whether we have a cGrafPort or a grafPort by checking the rowBytes value in the port returned by PrOpenDoc. If it’s negative (the high bit is set), we have a cGrafPort. Otherwise, we have a grafPort. In C this reads:printPort = PrOpenDoc(hPrint, nil, nil);haveCGrafPort = (printPort->gPort.portBits.rowBytes < 0);Since we’ll probably need this information before we actually want to print (while we’re still rendering), we may need to use the following routine. This routine assumes that we’ve already called PrOpen, that hPrint is a valid handle to a print record, and that we’re calling this routine outside of our PrOpenDoc/PrCloseDoc code. Normally, we would call this routine immediately after calling PrJobDialog.Boolean HaveColorPrPort(THPrint hPrint, OSErr *anErr){    Boolean        haveCGrafPort = false;    TPPrPort    dummyPort;    TPrStatus    statusRec;    if (hPrint)    {        // Open a document and check for errors.        dummyPort = PrOpenDoc(hPrint, nil, nil);        *anErr = PrError();        // If no errors, check the port's rowBytes value.        if (*anErr == noErr)        {            haveCGrafPort = (dummyPort->gPort.portBits.rowBytes < 0);        // We don't want to print yet, so kill the job by setting an error.        // Clean up by closing the document and calling PrPicFile to delete        // any spool file we may have created. Finally, clear the error        // we set.            PrSetError(iPrAbort);            PrCloseDoc(dummyPort);            if ((*hPrint)->prJob.bjDocLoop == bSpoolLoop)                PrPicFile(hPrint, dummyPort, nil, nil, &statusRec);            PrSetError(noErr);        }    }    else        *anErr = nilHandleErr;            return haveCGrafPort;}The routine calls PrOpenDoc, checks the value of the returned port’s rowBytes (negative means cGrafPort), and then posts an error to halt printing and calls PrCloseDoc. Finally, it calls PrPicFile to delete any spool file that may have been generated, clears the error it set, and returns true or false depending on whether or not the port we looked at was a cGrafPort. It’s not glamorous, but it works.If as a result of this inquiry we find that we have a cGrafPort, we give the go-ahead to printing with Color QuickDraw calls. If not, we go on to the next question.If a GrafPort, is this an ImageWriter?We can find out if we’re talking to the ImageWriter driver by getting the high byte of a validated print record’s prStl.wDev field. If the high byte is 1 or 5, we’re using the ImageWriter or the ImageWriter LQ driver. In C:#define IW_wdevID 1#define IWLQ_wdevID 5unsigned char    devID;devID = (*hPrint)->prStl.wDev >>8;if ((devID == IW_wdevID) || (devID == IWLQ_wdevID))    /* Then we have an ImageWriter. */;This method is described in the Macintosh Technical Note “Optimizing for the LaserWriter — Techniques” and is strongly discouraged there. So why am I suggesting that you use it? Well, unfortunately, there’s no other reliable way to do this. In fact, checking the wDev has begrudgingly become an acceptable thing; developers have become so used to this method that we’d need to give ample warning before breaking it. However, you should expect that one of these days, checking wDevs will not be supported anymore. As soon as Apple provides a better method, you should jump on the code conversion bandwagon and replace all your wDev-snooping code.It’s important to make this check after the cGrafPort check because there are third-party printer drivers for the ImageWriter that support 8-bit color through cGrafPorts. If we first check for an ImageWriter and then jump to the ImageWriter grafPort printing code, we may be sacrificing output quality, since we may have been able to print using the Color QuickDraw methods described for cGrafPorts.Anyway, if we find that we have an ImageWriter, we go on to the next question. Otherwise, we assume we have a monochrome printer and we accordingly launch the halftoning routine for printing.If an imagewriter, is a color ribbon installed?In the case of the ImageWriter, we have two options for determining whether a color ribbon is installed: we can either ask the printer or ask the user. To ask the printer, we would go through the serial driver if the ImageWriter were connected to a serial port or through AppleTalk Printer Access Protocol (PAP) if the printer were an AppleTalk ImageWriter. But this approach has a few problems. First, even if the user has a color ribbon, he may not want to use it. He may be printing rough copies of his work and want to save the color ink until he’s ready to make a final copy. Or he may know that his color ribbon is worn out and prints well only in black. A second problem is that the printer must be turned on and selected when weon and selected when we query it, or we’ll hang until we time out. The delay is likely to thoroughly annoy our users. Third, there’s a problem with ImageWriter I support: the “ESC ?” query sequence (see the ImageWriter Technical Reference Manual) that’s used to ask a serial ImageWriter if it has a color ribbon is not supported by the ImageWriter I. This means our query routine will hang until it times out, and we still won’t know whether the printer has a color ribbon. A final and more compelling argument against performing the color ribbon query is that the methods that work today are unlikely to work under QuickDraw GX. Whether or not you decide to take advantage of QuickDraw GX’s abilities, you should avoid implementing code that will make your application incompatible with it. So we’re left with the option of asking the user. The easiest way to do this is through a preferences setting. A slightly more coding-intensive but preferred approach is to add controls to the print job dialog. This might be a checkbox that simply says “Print in color,” a pop-up menu that offers color or black and white (as in the Apple IIgs ImageWriter driver version 4.0), or, as I chose in the Final Adventure sample code, radio buttons for color or halftone output.Even with this method, there are a few problems. If we add the control to every printer driver’s job dialog, it will appear even when printers return cGrafPorts, in which case we’ll want to ignore the setting. Also, if a checkbox is added to a driver like the 7.0 LaserWriter driver, the user will see redundant settings: a set of radio buttons for Color/Grayscale versus Black & White printing, and another checkbox for “Print in color.” The way to get around this problem is to add the output controls only when the ImageWriter or ImageWriter LQ driver is being used, something we’ve already discussed how to determine. If we implement this solution, we’ll want to store the last selected value for the control and default to it whenever the dialog is displayed. That will spare users from possibly having to click an extra button every time they print. However, if they change ImageWriters between print jobs, the saved flag may be incorrect for the new printer. This is a minor glitch that will become apparent the next time they print.The bottom line here is that if we determine that our application is dealing with an ImageWriter with a color ribbon installed, we print using the eight original colors. Otherwise, we use our halftoning routine and print in black.Putting it all togetherTo see how this decision process translates into code, take a look at the DoPrint routine in the Final Adventure sample on the CD. That sample rolls together into one neat package all the methods we’ve discussed in this article. Study it and give it a try to see how it works.Last wordsIn this article, we’ve looked at the problems associated with color printing under the current printing architecture. We’ve seen that there’s a real need for application developers to provide color printing support in their applications. We’ve also looked at techniques for printing high-quality representations of pictures containing pixMaps. These techniques consist of banding images through GWorlds for color-capable printers and drivers, creating color separations for printing on ImageWriters with color ribbons, and creating dithered halftones for black-and-white output.I mentioned that these techniques aren’t intended for printing pictures that contain text, because when text is converted to pixMaps, all of the font information is lost, and the result is chunky, poor-quality text that’s hard to read. You should always draw text separately from bitmaps or pixMaps, if at all possible. One way to do this is to write a routine to split a picture into two pictures: one with pixMaps, bitmaps, and foreground colors, and the other with everything except pixMaps and bitmaps (we’d want foreground colors in both). Once you have the two pictures, you can render the first using the methods discussed in this article and the second with DrawPicture. The order is important if we want the text to appear on top of the pixMap data. Remember to scale both pictures to the grafPort’s or cGrafPort’s resolution during printing.As more technologies make use of color on the Macintosh, and more scanners and jumbo color monitors are shipped, users are going to need a way to get realistic hard copies of their screen displays. And although the color capabilities of Apple drivers and printers will continue to improve in both the short and long term (through such technologies as QuickDraw GX, ColorSync, and new printer drivers), interim solutions such as the ones proposed here will be needed for some time to come.RELATED READING    •    “Making the Most of Color on 1-bit Devices” by Konstantin Othmer and Daniel Lipton, develop Issue 9.•    “Print Hints From Luke & Zz: CopyMask, CopyDeepMask, and LaserWriter Driver 7.0” by Pete (“Luke”) Alexander, develop Issue 8.•    “Print Hints From Luke & Zz: Color Printing With LaserWriter 6.0 Revisited” by Pete (“Luke”) Alexander, develop Issue 6.•    “Meet PrGeneral, the Trap That Makes the Most of the Printing Manager” by Pete (“Luke”) Alexander, develop Issue 3.    •    Macintosh Technical Notes “Optimizing for the LaserWriter — Techniques” (formerly #72) and “How to Add Items to the Print Dialogs” (formerly #95).•    Fundamentals of Interactive Computer Graphics  by  J. D. Foley and A. Van Dam (Addison-Wesley, 1982). Pretty much the standard in computer graphics books.•    Graphics Gems edited by A. S. Glassner (Academic Press, 1990). Graphics Gems II edited by J. Arvo (Academic Press, 1991). Lots of quick routines to do neat image processing stuff without the brain-bashing.    GRAPHICAL TRUFFlES    THE PALETTEMANAGER WAY    EDGAR LEE AND FORREST TANAKANo part of the Macintosh graphics environment is more feared, hated, or misunderstood than the Palette Manager. The Developer Support Center gets many questions about it from people who don’t have any idea how to get it to do what they want. We’ve seen many people just give up on the Palette Manager completely and instead use lower-level routines that are much more difficult to use but easier to understand quickly. The Palette Manager is actually very simple. It has no complicated heuristics that only rocket scientists can understand. In this column, we’ll show how the Palette Manager gets its job done, and we’ll talk about a couple of issues that you’ll have to deal with to make your palettes do what you want them to do. You’ll see that the Palette Manager is both easy to understand and a very useful part of the Macintosh Toolbox.Before you read this column, it would be a good idea to read the Palette Manager chapter (Chapter 20) of Inside Macintosh Volume VI, which lays down the terminology that we’ll use here.What happens when a palette is activatedThe critical job that the Palette Manager does is activate a palette. This happens whenever you call SetPalette or ActivatePalette for the frontmost window and whenever a window that has a palette is activated. When a palette is activated, the Palette Manager loads the palette colors into the     screen’s color table. How it goes about doing this is determined by the usage mode of each entry in the palette. You indicate an entry’s usage mode by setting a flag in its usage field. There are four usage modes: pmCourteous, pmTolerant, pmAnimated, and pmExplicit. You can choose a separate usage mode or combination of usage modes for each entry in a palette, or you can give all the entries the same usage mode. Let’s take a look at what each usage mode is good for and what effect each one has when a palette is activated.pmCourteous. The pmCourteous usage mode enables you to replace RGBColor records in your code with single integers. Thus, having a palette of courteous colors gives you an alternative way to specify foreground and background colors. This is great for localizers who might need to change the colors in your program to something more meaningful in other countries, and it’s great for you if you feel like changing a color without recompiling.Activating a palette of courteous colors simply tells the Palette Manager to use your window’s palette as a sort of lookup table. When your window is the current port and you call PmForeColor or PmBackColor with a palette index, the Palette Manager simply retrieves the color in your window’s palette at that index and uses it for any subsequent drawing to that window. Courteous colors never change the screen’s color table — they get mapped to the closest colors already available there.Here’s an example: Without the Palette Manager, you would draw a green oval in a window by setting up an RGBColor record with a red component of 0, a green component of 65,535, and a blue component of 0 and passing this record to RGBForeColor; then you would call FrameOval. To change the oval to blue, you would modify your RGBColor record in your source code and recompile your program. Now, suppose instead you brought in the Palette Manager by setting up a palette resource (resource type 'pltt') that contained one courteous entry — green — with an index of 0. In your code, you would call PmForeColor(0) instead of RGBForeColor with green. When you called    FrameOval, the oval would be drawn in green. To change the color to blue, you would just use ResEdit to modify the green entry in your 'pltt' resource to blue.So calling PmForeColor for a courteous palette entry is just like calling RGBForeColor, but instead of supplying the RGB components, you simply pass an index into the palette, where the index points to the color’s RGB components (see Figure 1). pmTolerant. The pmTolerant usage mode is used when you want to be sure that a specific set of colors is available to the screens that your window is on. It’s a bummer to draw a rainbow in a window on a screen that another application has removed all the greens and yellows from. You need a palette of tolerant colors to assert your application’s right to the colors it needs to display its images optimally. With such a palette, you can change the colors in a screen’s color table to ones that you want.Before we look at how a palette of tolerant colors is activated, realize that Color QuickDraw always wants white in the first entry of a screen’s color table and black in the last. To enforce this rule, Color QuickDraw protects these two entries from being changed to other colors. That means a palette of tolerant colors can change all the colors of a screen’s color table except two.    When a palette of tolerant colors is activated, the Palette Manager checks each entry in the palette and associates it with an entry in the screen’s color table. Let’s say we have a palette with three entries — bright green, black, and dark yellow — attached to a window on a 16-color screen. All three palette entries are tolerant, with a tolerance of 0. The Palette Manager does the following:1.    It checks the first entry in the palette, bright green, and searches the screen’s color table for the same bright green. It finds that color near the middle of the color table, and so associates palette entry 0 with this existing bright green entry in the color table. 2.    It searches the screen’s color table for the second entry in the palette, black. It finds it at the very end, so palette entry 1 corresponds to entry 15 of the color table.3.    It searches the screen’s color table for dark yellow. There isn’t one, so it chooses a color table entry to change to dark yellow. It can’t choose the black or the white entry because they’re protected and can’t be changed, and it can’t change the bright green entry because that entry is already associated with entry 0 of the palette. So it chooses one of the other color table entries and changes it to dark yellow.Because the color table has been changed, the Palette Manager makes sure that other windows are redrawn,    Figure 1Alternative Ways to Specify a Foreground Colorjust in case they were drawn using the color table entry that was changed to dark yellow. It does this by sending update events to all windows as soon as the palette is activated. If no color table changes were needed, the Palette Manager doesn’t bother doing this.Once our three-entry palette has been activated, we can call PmForeColor, passing it 0, 1, or 2 to draw objects in bright green, black, or dark yellow, respectively. In fact, we could call RGBForeColor, passing it bright green, black, or dark yellow RGBColor records, and they would use the same colors that our palette loaded into the screen’s color table. Figure 1 applies to palettes of tolerant colors as well as palettes of courteous colors.If there are more palette entries than will fit in the screen’s color table, the Palette Manager associates each palette entry with a color table entry until no more color table entries are available and then interprets the rest of the palette entries as courteous. For example, let’s say a 20-entry palette is activated on a 16-color screen, where each palette entry is pmTolerant with a tolerance of 0 and neither black nor white is in the palette. Beginning with the first palette entry, the Palette Manager associates each entry with a color table entry. The 15th palette entry can’t be associated with any color table entry because the black and white entries are protected from changes and all 14 other entries have already been associated with palette entries. So the 15th palette entry and all entries beyond it are simply treated as courteous colors.pmAnimated. On indexed devices, the pmAnimated usage mode is used to do color table animation, which gives you smooth, fast visual effects simply by changing the colors in your screen’s color table very quickly. You don’t have to redraw anything to see this animation; you just use the Palette Manager to change the interpretation of the colors of your existing image. This is great for games and fast controls for image processing applications. On direct devices, animated entries are treated as courteous entries.Like pmTolerant entries, each pmAnimated palette entry is associated with an entry in a screen’s color     table  when the palette is activated, and the colors in the palette are put into the screen’s color table. But changing color table entries for color animation changes everything on the screen that uses those same color table entries, like the desktop or window frames. That’s usually not what we want, so the Palette Manager forces everything outside the window to be redrawn without the colors that are being used for color animation — those colors are off limits. In fact, the only way to use those colors is to call PmForeColor or PmBackColor for an animated palette entry and then draw some QuickDraw object. Remember, the big difference between tolerant and animated colors is that color table entries that are used for tolerant colors can be used by anyone, but animated color table entries are used only by objects drawn in the palette’s window after a call to PmForeColor or PmBackColor.Let’s use our three-entry palette as an example again, but this time assume that each entry is animated. The Palette Manager first takes the bright green entry, picks a color table entry on the screen, and changes it to bright green. It doesn’t matter if there’s already a bright green in the color table. As usual, the Palette Manager avoids the black and white entries at either end of the color table. It then picks another color table entry and puts black into it, and does the same for the dark yellow entry. If you call PmForeColor(0) and draw an object, it’s drawn in bright green. But if you call RGBForeColor for bright green and draw an object, it doesn’t use the bright green that’s been defined as animated. Instead, it uses the closest color to bright green available, aside from any color table entries that have been defined as animated.pmExplicit. The pmExplicit usage mode is rarely used alone, and there’s not much to it beyond what’s described in the Palette Manager chapter of Inside Macintosh Volume VI. We’ll discuss in the next section the more interesting case of using pmExplicit along with the other usage modes.Are black and white needed in a palette?When attaching a palette to a window, the Palette Manager works in a way that affects whether you     should store black and white in the palette. We’ll outline the way it works in two different categories. The first category applies to palettes containing the same number of entries as the screen’s color table, and the second category applies to palettes containing fewer entries than the screen’s color table.Same number of entries in palette and color table. If the palette contains the same number of entries as the screen’s color table, black and white should be stored in the palette. If these two entries aren’t stored in the palette, the Palette Manager will ignore two entries in the palette when loading the palette colors into the screen’s color table, to avoid overwriting the color table’s black and white entries. The Palette Manager will decide which palette entries to ignore based on the usage field for each palette entry. As an example, let’s take the case of a palette all of whose entries are defined as pmTolerant + pmExplicit. Because the pmExplicit flag tells the Palette Manager to store each palette entry in its respective index in the screen’s color table, the choice of which palette entry to ignore is fairly straightforward. The colors stored at the first and last entry of the palette correspond to the protected entries in the screen’s color table, so these entries will be ignored.In the case of a palette containing entries not defined with the pmExplicit flag set, the decision of which two palette colors to ignore can seem somewhat random. This is because the decision is based on the current distribution of the palette entries in the screen’s color table, where the distribution is derived from the tolerance values of the palette entries and the existing colors in the screen’s color table before the palette was activated.For example, suppose we have a 16-entry palette and a 4-bit screen color table as shown in Figure 2 (we’ve used the default color table). Figure 3 shows how the screen’s color table will look in two different cases when the palette of the frontmost window has been activated. In these figures, the     Figure 2An Example Palette and Color TableFigure 3The Color Table With the Palette of the Frontmost Window Activeexplicit entries are distributed sequentially in the screens’ color table, whereas the non explicit entries are scattered throughout the color table.For the explicit entries, we see that the first and last entries of the palette are not loaded into the screen’s color table, to protect the color table’s white and black entries. However, for the nonexplicit entries, the two palette colors ignored aren’t necessarily the first and last entries of the palette. When determining where the nonexplicit palette entries should be stored in the color table, the Palette Manager first checks to see which colors in the screen’s color table already match those in the palette. If there’s a match within the specified tolerance, that palette entry is stored at the index of the matching color in the screen’s color table.And one other thing: When multiple nonexplicit palette entries match (within the specified tolerance) the same color in the screen’s color table, all those palette entries are stored at the same index in the color table. This means that only one slot in the color table is needed rather than as many slots as there are palette entries.Fewer entries in the palette. Now, if the window’s palette contains fewer entries than the screen’s color table, the palette entries’ usage field plays a large part    Figure 4Another Example Palette and Color TableFigure 5The Color Table With the Palette of the Frontmost Window Activein determining whether black and white should be included in the palette. The reason for this is similar to the previous case for nonexplicit entries. If all the entries in a palette are defined without the pmExplicit flag set, the presence of black and white in the palette isn’t as critical, since the palette entries will likely be scattered throughout the screen’s color table while avoiding the protected white and black colors stored in the first and last slots of the screen’s color table. Since there are fewer palette entries than color table entries, we needn’t worry about palette entries getting ignored. So in this case, creating a palette without a black entry or a white entry is perfectly fine as long as there are enough slots in the screen’s color table to hold all the palette entries and the two protected colors.However, if the palette entries are all defined with the pmExplicit flag set, there’s a good chance that one of the palette’s entries will be ignored. And the palette entry that does get ignored will usually be the first entry in the palette, because this entry shares the same index as the protected white entry in the screen’s color table.For example, suppose we have a 192-entry palette and an 8-bit screen color table as shown in Figure 4 (again, we’ve used the default color table). Figure 5     shows how the screen’s color table will look in two different cases when the palette of the frontmost window has been activated.Again, the explicit entries are distributed sequentially in the screen’s color table, starting with the first entry in the color table. Because the first entry in the screen’s color table is protected from being overwritten, the first entry in the palette is ignored. But in the nonexplicit case, the entries are distributed somewhat differently. Depending on what colors are already in the screen’s color table, the nonexplicit entries can be stored anywhere throughout the color table. And in this example, since there are clearly more slots in the screen’s color table than needed by the palette entries, all the colors in the palette appear in the color table; none are ignored. So again in this case, including black and white in the palette really isn’t necessary.Where to put black and white in the paletteWe’ve seen how the way the Palette Manager works can affect whether you decide to store black and white in your palette. In all the instances we mentioned, the positions of the black entry and white entry were always the same: white first and black last. However, in certain cases, you may not want to position white first and black last. In the case where you’d like to create just one palette to handle devices at multiple bit depths, the black and white entries should be stored as the first two colors in the palette. This ensures that the two colors used on a 1-bit device are present. Likewise, to ensure that the optimal colors are used at depths 2, 4, and 8, we do the same thing for each additional depth. We store the preferred colors at the appropriate position in the palette. Figure 6 shows how a typical palette could be configured to handle multiple bit depths.In our sample palette, the first 16 colors are defined as shades of gray, because we’ve decided our window would look best when displayed in grayscale on a 1-, 2-, or 4-bit device. For the 1-bit and 2-bit devices, we     Figure 6A Palette Configured to Handle Multiple Bit Depthssimply choose the appropriate shades for those depths and store them in the first four slots of our palette. But for an 8-bit device, we include as many colors as we can for the optimal display at that depth. For this example, we added the nongrayscale colors from the standard 8-bit color table to the remaining slots in our palette. Because the Palette Manager only uses the maximum number of colors it can (starting at the first index in the palette) for a specific bit depth, only the colors we want shown will be shown. Also, because the placement of the colors determines which colors are available at a certain depth, all the palette entries must be defined as explicit entries.    Another way of ensuring that certain palette entries are available at certain depths is to apply the inhibit usage categories to the palette entries. These inhibit constants tell the Palette Manager which entries are available under the current color environment. Depending on which inhibit constant is used, the palette entries can be inhibited from a specific bit depth and from a color or grayscale device. So by combining various inhibit constants to our sample palette, we can inhibit the colors outside the current depth’s range from being used. In our example, if entry number 16 were defined with pmInhibitC2 + pmInhibitC4 + pmInhibitG2 +       pmInhibitG4this entry would be available only on an 8-bit or deeper color or grayscale device.One Last WordThe Palette Manager works very simply, but it has so many options and effects that it can seem complicated. By understanding how the Palette Manager makes its decisions, you should find it easy to figure out how to make it do precisely what you want. We hope this column has made this clear, so that you can use the Palette Manager and avoid fussing with the alternatives.    Here’s a page wortth of text to take up some room,  Maybe it will help.DEVICELOOP MEETS THE INTERFACE DESIGNERJOHN POWERSWith the ascendancy of multimedia, 3-D shading and elaborate color backgrounds are showing up in an increasing number of interface designs. But what happens when these sophisticated interface elements must be displayed across multiple monitors of different bit depths? This article explains how to use the DeviceLoop function to take care of the device, clipping, and bit-depth logistics involved in multiple-monitor displays. One of the great things about the Macintosh is its ability to support more than one monitor at a time. You can display windows in any active monitor or split a window — and the objects in it — across several monitors at once. What’s more, you can make an image adjust to the bit depth and other capabilities of each monitor it’s displayed on, so that the visual interface looks as good as it possibly can on each of the devices attached to the computer.I recently worked on a project in which one of the goals was exactly that — we wanted our application windows to look really good across multiple monitors and at any bit depth. The task was complicated by the fact that the interface was quite sophisticated graphically. To give our windows a distinctive, three-dimensional look, we used shaded color graphics. We filled the content area with background graphics, text, patterned and colored lines, and 3-D buttons. With the exception of our standard List Manager lists, all the window objects were drawn by our application program. Even the conventional scroll bar, close box, and zoom box were replaced by custom art drawn by the application, not the Window Manager.Displaying these complex windows across multiple monitors was obviously going to be a challenge. We knew that the Finder, for example, pulled it off — whenever Finder windows span monitors of different bit depths, the parts of the window on each monitor are drawn to the individual monitor’s depth. “If the Finder does it, so can we,” I decided, although I actually knew very little about how to solve the problem.DeviceLoop to the RescueI bit the bullet. The search for ways to draw a window across multiple monitors led in a number of directions, all of them involving visible regions, clipping regions, and region-rect conversions. I asked a lot of people for advice, and while everyone was gracious in offering help, the job was looking complicated. Fortunately, one of the advice givers suggested that I check out the DeviceLoop function in Inside Macintosh Volume VI. (I found out later that the advice giver was the author of the DeviceLoop function.)When I looked up DeviceLoop in Volume VI, here’s what I found:     The DeviceLoop procedure searches all active screen devices, calling your drawing procedure whenever it encounters a screen that intersects your drawing region. You supply a handle to the region in which you wish to draw and a pointer to your drawing procedure. . . . If the DeviceLoop procedure encounters similar devices — having the same pixel depth, black-and-white/color setting, and matching color table seeds — it makes only one call to your drawing procedure, pointing to the first such device encountered.This sounded exactly like what we were looking for. The Window Manager itself uses DeviceLoop to display window components on a variety of monitors. Since we were drawing our own windows, DeviceLoop was clearly what we needed.Here’s what DeviceLoop looks like in C:pascal void DeviceLoop (RgnHandle drawingRgn,                                DeviceLoopDrawingProcPtr drawingProc,                                long userData, DeviceLoopFlags flags);The drawingRgn parameter is a handle to the region that will be drawn in (usually a window’s visRgn). The drawingProc parameter is a pointer to your drawing routine (see below). The userData parameter is a long that gets passed to your drawing routine. Finally, the flags parameter controls how devices are grouped before your drawing routine is called. (Pass 0 for the default behavior — grouping similar devices together. See the description in Inside Macintosh for other possible values.)The drawing routine needs to be declared as follows:pascal void MyDrawProc (short depth, short deviceFlags,                                GDHandle targetDevice, long userData);Here the depth parameter is the depth of the device you’re currently drawing on. The deviceFlags parameter is a copy of the device’s gdFlags, targetDevice is a handle to the device, and userData is whatever you passed to DeviceLoop.DeviceLoop works like this: Each time your drawing routine is called, the current port’s visRgn will have been set to the intersection of your drawing region and some screen device. DeviceLoop passes the drawing characteristics of the particular screen it’s working on to the drawing routine, which can then make use of them — for instance, by drawing to the appropriate bit depth. In short, DeviceLoop takes care of all the device, clipping, and bit-depth logistics, while all you have to do is draw.Using DeviceLoop in an Object-Oriented WorldIn our application, we had to draw not only the contents of the window, but also the window itself. True to our object-oriented design, we created classes for all the interface objects. These classes included a TArt class for backgrounds, graphics, and 3-D button objects; a TLine class for lines; a TTxt class for black-and-white text; and a TBkg class for backgrounds for the text. Although we used DeviceLoop for drawing objects in every class except the text classes, the heart of the process is best illustrated by our use of DeviceLoop for TArt objects.The graphics for TArt objects were stored as PICT resources. To give the best possible image, the interface designer created an 8-bit-deep PICT for display depths of 8 bits or deeper. For all other display depths and CPUs without Color QuickDraw, she created a 1-bit-deep, black-and-white PICT. We could have let the Macintosh use the 8-bit PICT for all drawing — color and black-and-white — and, with dithering, the results would have been pretty good. But since we had our own hand-designed, 1-bit version of the PICT, DeviceLoop was a better solution.Our window object kept track of all the interface objects that it needed to draw. When an update event was received, the document object told the window object to draw. Specifically, our BeginUpdate/EndUpdate function called a particular drawing routine for each of the objects. Each object, in turn, called DeviceLoop with our DrawProc callback, which contained the actual drawing code for that object. Figure 1 shows this strategy.Figure 1An Inefficient Way to Incorporate DeviceLoopWe used this DeviceLoop-within-each-object’s-drawing-procedure approach until someone pointed out how inefficient it was to call DeviceLoop for every interface object. We realized that it would be much better to call DeviceLoop once and have the drawing procedure that we passed to it decide which object had to be drawn. We wound up with a single DeviceLoop call in the window’s BeginUpdate/EndUpdate function, as shown in Figure 2. The use of a single DeviceLoop call in the window object really streamlined the design.Figure 2A Better Way to Call DeviceLoopOne problem we encountered was that the compiler balked whenever we referenced our drawing routine (called DrawProc) in the DeviceLoop parameter list. We even included the scope — TWin::DrawProc — and that didn’t help. The breakthrough came when we made DrawProc static. Unfortunately, changing it to static caused another problem: the compiler choked when we referenced this within DrawProc. We forgot that static functions can’t reference nonstatic member variables. (You C++ aficionados are probably smiling, but we recent converts must struggle at first.) We couldn’t use static variables, however, because each of our objects required its own variables. Thus, to access an object’s variables, we had to pass the window object pointer in the userData parameter of the DeviceLoop function.An ExampleThe Developer CD Series disc contains a sample application that shows how we used DeviceLoop for TArt objects in our interface. The application, DeviceLoopInDrag, displays a window that can be dragged between monitors of different bit depths. Figure 3 shows this window spanning a grayscale and a black-and-white monitor.Excerpts from the DeviceLoopInDrag source code follow. First there’s the update function that’s called whenever the window needs to be redrawn. It just calls the drawing procedure for the window object (TWin).              Figure 3DeviceLoop in Action// TDoc::DoUpdate// Document object.// Entry for update event action.voidTDoc::DoUpdate(){    BeginUpdate(this->fDocWindow);    this->fWinObj->Draw();    EndUpdate(this->fDocWindow);}The window’s drawing procedure does little more than set up and call DeviceLoop. Notice that we’re passing the reference to the current window object — this — in DeviceLoop’s userData parameter, as described earlier. Since we want the default DeviceLoop behavior, we set the flags to 0.// TWin::Draw// Window object.// Within BeginUpdate/EndUpdate.voidTWin::Draw(){    // Have DeviceLoop manage the drawing.    // Pass the window object in userData.    long                    userData = (long)this;    DeviceLoopFlags    flags = 0;    GrafPtr                myPort;    GetPort(&myPort);    DeviceLoop(myPort->visRgn, TWin::DrawProc, userData, flags);    // Draw the stuff we don't need DeviceLoop for.    // We tell the subview to take care of that.    this->fView->Draw();};Next, theTWin drawing procedure is the callback procedure that DeviceLoop invokes to coordinate the drawing of each of the elements on the screen. // TWin::DrawProc// Called by DeviceLoop.// A static function. Must be in a resident segment, locked and// unpurgeable. Because it's static, it can't access object member // variables directly. We use the window object passed in userData // to access its member variables.#pragma segment Mainpascal voidTWin::DrawProc(short depth, short /*deviceFlags*/,            GDHandle hTargetDevice, long userData){    // Get the window object from userData.    TWin* theWinObject = (TWin*) userData;    // Use depth of 1 if we have a computer without Color QuickDraw.    depth = (hTargetDevice==NULL)?1:depth;    // Draw our objects.    theWinObject->fBackground->Draw(depth);    theWinObject->fLogo->Draw(depth);    theWinObject->fText->Draw(depth);    theWinObject->fButton->Draw(depth);};Finally, here’s the actual TArt::Draw function, used for various items in the window. Based on the bit-depth parameter passed to it, the Draw function decides whether to use the black-and-white or the color version of its PICT.// TArt::Draw// All art objects (PICTs) are drawn here. This is where we distinguish// between B&W or color renderings of TArt objects. The B&W rendering has// a resource ID that's kBWOffset larger than its color counterpart value.voidTArt::Draw(short depth){    // Don't draw empty art.    if(this->fPictID==0)        return;    PicHandle    hPict;    if(depth<8)    {        // Use B&W PICT.        hPict = (PicHandle) GetResource('PICT', this->fPictID+kBWOffset);    }    else    {        // Use color PICT.        hPict = (PicHandle) GetResource('PICT', this->fPictID);    }    if(hPict)    {        Rect    theDrawRect;        this->GetDrawRect(theDrawRect);        HLock((Handle) hPict);        DrawPicture(hPict, &theDrawRect);        HUnlock((Handle) hPict);    }};Summing UpHow did we wind up feeling about DeviceLoop? After we first discovered it, our tendency was to use it everywhere. We even used it to call a drawing routine that always drew in black and white, no matter what the bit depth. We later stripped this use out of the interface because it offered no advantage and added extra code.One concern we had was that performance would degrade to an intolerable level as we added objects to be drawn. To see what would happen, the mischievous test engineer for our project devised a case with 99 separate TArt objects in the same window. Predictably, the 99 objects weren’t displayed all at once. While you can expect some lag between the appearance of first object in a window and the last, however, the drawing time when you use DeviceLoop is really very short, well within user tolerance.All in all, our design team was very pleased with DeviceLoop. We were glad to have found such an easy way to solve the problem of displaying interface objects on monitors of different bit depths. The interface designer got the look she wanted, and we were able to accomplish the job with a minimum of hassle and a minimum of code. This was one challenge that left everyone happy.MACINTOSH Q & A Q    Our program has a problem with filenames that start with a period. During an Open call, if the filename starts with a period, the Open code calls the Device Manager (for drivers and DAs) instead of the File Manager. However, we’ve seen other applications that can successfully open these files. What’s the secret? How do we open files that otherwise look (from the name) like drivers? A    The Open trap is shared between the Device Manager and the File Manager. When Open is called, it checks first to see whether you’re trying to open a driver. Driver names always start with a period. If you can, avoid using filenames that begin with a period. Macintosh Technical Note “HFS Elucidations” (formerly #102) discusses this conflict. The secret to opening those files is using the new Open Data Fork functions available with System 7 — FSpOpenDF, HOpenDF, and PBHOpenDF. These functions bypass the driver name check and go right to the File Manager. Here’s the code we use to open a file:err := HOpenDF(vRefNum, dirID, fileName, permission, refNum);IF (err = paramErr) THEN            {HOpenDF call isn't available}    err := HOpen(vRefNum, dirID, fileName, permission, refNum);                                            {try again with old HOpen call}Try this and your problem should go away under System 7. The code retries with the regular Open call (which uses the same input parameters), so this code can be used in programs that run under both System 6 and System 7.Q    In System 7, the memory allocated for INITs by the 'sysz' resource mechanism seems to be limited to about 16 MB on our 32 MB Macintosh IIfx. For 'sysz' values up to 15 MB it works great, but it seems the system heap can’t grow beyond 16 MB. Is there some reason for this?A    The system heap size at startup is limited to approximately half the size of total RAM. This is because the early startup code places the stack and some globals in the middle of RAM so that the system heap can grow up from below while BufPtr is lowered from above. This is basically the situation until an application is launched. Things are eventually rearranged so that the system heap will have more room to grow, but this doesn’t happen until the Process Manager is launched, after INIT time. This limitation would mean that you could size your heap until it reached nearly (but not quite) half the size of RAM. We suggest that you attempt to allocate some of your RAM later, after the Process Manager starts up; at that point, the system heap should be somewhat less limitedQ    The Macintosh Technical Note “Setting ioNamePtr in File Manager Calls” (formerly #179) says that ioNamePtr needs to point either to nil or to storage  for a Str255. This    contradicts the Technical Note “Searching Volumes — Solutions and Problems” (formerly #68), which gives an example of a recursive indexed search using PBGetCatInfo. The example uses a Str63. Which Technical Note is correct?A    To be generically correct, ioNamePtr should point to a Str255. However, in the case of PBGetCatInfo and other calls that return a filename (or a directory name), a Str63 is sufficient. The reasons are tied to the history of the Macintosh file system.MFS, the original Macintosh file system, supported filename lengths of up to 255 characters. However, the Finder on those systems supported filename lengths up to only 63 characters and, in fact, developers were warned to limit filename lengths to fewer than 64 characters (see page II-81 of Inside Macintosh Volume II).HFS, the hierarchical file system (in every Macintosh ROM since the Macintosh Plus), further limited filename lengths to 31 characters. If you mount an MFS disk while running HFS, the old MFS code is called to handle the operation. So, the file system can still create and use files with long filenames on MFS volumes.When the System 7 file system was being designed, Engineering had to decide what size string to use in FSSpec records. The decision was to use a Str63 instead of a Str31 to be able to support long MFS filenames, and to use a Str63 instead of a Str255 because there were probably very few filenames with over 63 characters (remember, the old Finder limited filenames to 63 characters). Using a Str63 instead of a Str255 saves 192 bytes per FSSpec record.So, we recommend that you use at least a Str63 for filenames, as in “Searching Volumes — Solutions and Problems.” If you need to manipulate the filename in any way after you’ve gotten the name — for example, to concatenate it with another string — you might want to use a Str255.Note: Even though the System 7 file system supports filenames longer than 31 characters on MFS volumes, the System 7 Finder does not. In fact, the System 7 Finder currently crashes if you try to open an MFS volume (that is, open the volume window) that has files with names longer than 31 characters.Q    I’m trying to use the Macintosh Time Manager to calculate elapsed times, but when I increase the delay time from $4FFFFFF to $5FFFFFF I get incorrect results. Why is this happening?A    There seems to be an undocumented limitation of the Time Manager: it can’t keep track of times longer than about a day, so it replaces them with the    maximum time it supports. For Time Manager tasks, this isn’t crippling; the task simply executes earlier than expected. When used for elapsed-time calculations, however, it’s a bad thing; the Time Manager installs the task with the smaller time, and when you remove it, you see a smaller than expected remaining time. This makes it appear as if a large period of time has passed.The value at which the Time Manager trims is approximately $53A8FE5. The reason for this strange value is somewhat complex. The Time Manager uses a VIA timer to do its measurement. This timer runs at 783360 Hz, giving it a resolution of about 1.276 microseconds. However, the Macintosh could never actually provide this kind of accuracy, given its latencies and overhead. Also, this frequency would have given a 32-bit counter a range of only about 91 minutes. Therefore, the Time Manager actually throws away the low four bits of this counter, keeping a 32-bit counter with a resolution of 20.425 microseconds and a range of 24 hours, 22 minutes. This time is a lot larger than the maximum number of microseconds that can be measured, but is equal to 87,724,005 milliseconds, which is (ta-dahh!) $53A8FE5. This is why you were overflowing the Time Manager’s internal counter, causing your task to be clipped.All should work well if you use times less than 24 hours. If you need to measure durations for times exceeding the Time Manager’s limits, you can use a fixed-frequency task that executes every hour and increments an hour counter. To determine the fractional hours component of the time, you’d remove the task to determine how much longer till the next hour.Q    When a picture that contains a pixMap is spooled into a window, how and when is the depth of the pixMap in the picture converted to the depth of the screens the window is on?A    When a picture is spooled in, if QuickDraw encounters any bitmap opcode, it allocates a pixMap of the same depth as the data associated with the bitmap opcode, expands the data into the temporary pixMap, and then calls StdBits. StdBits is what triggers the depth and color conversions as demanded by the color environment (depth, color table, B&W settings) of the devices the target port may span (as when a window crosses two or more screens).If there’s not enough memory in the application heap or in the temporary memory pool, QuickDraw bands the image down to one scan line and calls StdBits for each of these bands. Note that if you’re providing your own bitsProc, QuickDraw will call it instead of StdBits.This process is the same when the picture is in memory, with the obvious exception that all the picture data is present; the color mapping occurs when StdBits does its stuff.Q    How do I get the pixel depth of the QuickTime video media for a given track?A    To find the video media pixel depth, you’ll need to retrieve the media’s image description handle. You can use GetMediaSampleDescription to get it, but this routine needs both the video media and the track’s index number. It’s not obvious, but a media’s type is identified by its media handler’s type. Thus, you can walk through a movie’s tracks by using its indexes until you find video media, at which point you have both the track index and video media. The following sample code does the trick:#include <QuickDraw.h>#include <Movies.h>#include <ImageCompression.h>Media GetFirstVideoMedia(Movie coolMovie, long *trackIndex){    Track    coolTrack = nil;    Media    coolMedia = nil;    long        numTracks;    OSType    mediaType;    numTracks = GetMovieTrackCount(coolMovie);    for (*trackIndex=1; *trackIndex<=numTracks; (*trackIndex)++) {        coolTrack = GetMovieIndTrack(coolMovie, *trackIndex);        if (coolTrack) coolMedia = GetTrackMedia(coolTrack);        if (coolMedia) GetMediaHandlerDescription(coolMedia,            &mediaType, nil, nil);        if (mediaType = VideoMediaType) return coolMedia;    }    *trackIndex = 0;    // trackIndex can't be 0    return nil;        // went through all tracks and no video}short GetFirstVideoTrackPixelDepth(Movie coolMovie){    SampleDescriptionHandle imageDescH =         (SampleDescriptionHandle)NewHandle(sizeof(Handle));    long        trackIndex = 0;    Media    coolMedia = nil;    coolMedia = GetFirstVideoMedia(coolMovie, &trackIndex);    if (!trackIndex || !coolMedia) return -1;  // we need both    GetMediaSampleDescription(coolMedia, trackIndex, imageDescH);    return (*(ImageDescriptionHandle)imageDescH)->depth;}Q    What’s the difference between ignorance and apathy?A    We don’t know and we don’t care.Q    Could you tell me what the “printer driver is MultiFinder compatible” bit is used for?A    The “printer driver is MultiFinder compatible” bit provides two features. First, it allows the printer driver resource file to be opened by multiple clients. This was obviously needed to support multiple applications printing simultaneously under MultiFinder. The other feature provided by the flag is the loading of PDEFs into the system heap rather than the application heap (which is where they go under the Finder).The MultiFinder-compatible bit has a major limitation: if your driver has this flag set, you aren’t allowed to add or resize resources, or do anything else that would cause the RAM-resident resource map to change. Although MultiFinder lets multiple applications open the printer resource file at the same time, it has no control over the resource map that gets loaded by the Resource Manager when the file is opened. Because of this, each client gets its own personal copy of the resource map. When these clients get done with the file, they write the resource map back to the file (via UpdateResFile). Obviously, if the resources have changed in any way, the last client to call UpdateResFile is the only one whose changes will be recorded. This is a “thrill seeker” method of handling the printer driver resource files, but since none of the Apple printer drivers currently add or resize resources, it made sense.So the bottom line here is that if you want your drivers to be compatible under MultiFinder, you’ll have to implement a scheme that doesn’t require adding or resizing resources. It’s OK to change the data in a resource, as long as you don’t change its size. Changing the data won’t cause changes to the resource map, so each client will still have accurate copies of the map.Here’s what would happen to your printer driver’s resources under the Finder and MultiFinder when the MultiFinder-compatible bit is set:•    Under the Finder in system software version 6.0.x: All resources are loaded into the application heap — regardless of the resource attribute’s bit setting. If the resource has the “load into the system heap” bit set, it will still be loaded into the application heap under the Finder. This makes sense in the Finder world because the application heap will usually have more room than the system heap.•    Under MultiFinder in System 6 or System 7: All the printer driver’s resources will be loaded into the system heap. This is true whether the “load into the system heap” bit is set or not.Why does the resource loading occur this way, even when the resource’s “load into the system heap” bit is set? Patches to the GetResource trap load all your printer driver’s resources into the system heap when the MultiFinder-compatible bit is set under MultiFinder, and into the application heap under the Finder (as described above), which is why you can’t override this behavior. By the way, you should be aware of the SetPDiMC MPW tool, which is available on the Developer CD Series disc. It will automatically set the MultiFinder-compatible bit for you when you build your printer driver.Q    If I call FSWrite and attempt to write more than space allows, what happens? Of course I get a Disk Full error, but does FSWrite write as much as possible before quitting, and then return the number of bytes written in the count parameter?.A    In the current implementation of the file system, writes to local volumes owned by the file system are an all-or-nothing deal. If the space for a write can’t be allocated, the write call fails and no bytes are written.However, do not depend on that, because the Macintosh file system doesn’t control all volumes that might be mounted. Today, Apple ships four external file systems: CD-ROM, AppleShare, ProDOS File System (for Apple II ProDOS volumes), and PC Exchange (for MS-DOS volumes). Various third parties have written other external file systems. The way they react to error conditions may not be the same as local volumes controlled entirely by the file system.To make your application always work correctly, you should check for errors and handle them appropriately. If you get a dskFulErr, you should assume that if any information was written to the file, it wasn’t written correctly. You should either reset the file’s EOF to its previous position (if you’re appending to an existing file) or delete the file (if you had just created the file and were writing to it for the first time).Q    How can I mount a volume without using aliases? I get the mounting information, then attempt to mount the volume. However, the PBVolumeMount call returns an error code.A    The PBGetVolMountInfo, PBGetVolMountInfoSize, and PBVolumeMount functions are currently handled by only the AppleShare external file system (part of the AppleShare Chooser extension). Those functions are available on AppleShare volumes when the AppleShare Chooser extension is version 7.0 (system software versions 7.0 and 7.0.1), version 3.0 (AppleShare 3.0), or version 7.1 (System 7.1). The AppleShare Chooser extension version 3.0 can be installed on System 6 systems, and then the PBGetVolMountInfo, PBGetVolMountInfoSize, and PBVolumeMount functions can be used in      System 6. Other file systems may support these functions in the future. The paramErr error code is returned when these functions aren’t available on a particular volume.Q    I need to prevent users from copying my application off a volume. Is there a new equivalent of the old Bozo bit?A    The Bozo or NoCopy bit was bit 11 in the fdFlags word of the FInfo record. As noted in the Macintosh Technical Note “Finder Flags” (formerly #40), this bit hasn’t been used for that purpose since System 5. In fact, System 7 reused bit 11 for the isStationery bit. (See Inside Macintosh Volume VI, pages 9-36 and 9-37, for the current list of Finder flag bits.)There isn’t an equivalent of the Bozo bit. However, the System 7 Finder won’t copy files that have the copy-protect bit (bit 6) set in the ioFlAttrib field returned by the PBGetCatInfo function. However, the bits in the ioFlAttrib field can’t be changed with the PBSetCatInfo function. Instead, they’re used to report the state of things set by other parts of the file system.The copy-protect bit is set by the AppleShare external file system when it finds that a file’s copy-protect bit is returned by an AppleTalk Filing Protocol file server. The AppleShare external file system is the only file system we know of that sets the copy-protect bit. There’s no way to make the local file system set the copy-protect bit for volumes it controls.Q    Are there any tricks that might speed up reading and writing large files to disk? We’re using standard C calls (fread and fwrite) for this purpose since our file I/O calls need to be platform-independent. Are there any low-level File Manager calls that might speed up the file I/O?A    The C fread and fwrite functions are slower than File Manager calls because the standard C library adds another layer of overhead to file I/O. In addition, unless you turn buffering off, all file I/O is double-buffered when you use the standard C library functions. That is, fread reads from a RAM buffer in which the lower-level C library code has buffered data read from a disk file; fwrite writes data into a RAM buffer and the lower-level C library code writes from that buffer into a disk file.For the highest file I/O throughput, and for maximum flexibility and functionality on the Macintosh, you should use the File Manager for all file access. The low-level File Manager calls (the PBxxx or PBHxxx calls) have the least overhead and give you the most control. If you use the File Manager’s Read (FSRead or PBRead) and Write (FSWrite or PBWrite) calls, you’ll achieve maximum throughput by reading or writing your data in the largest sizepossible (for example, if you need to write 10,000 bytes, you can write them with one Write call). If you must use the standard C library, you may want to adjust the size of the file I/O buffer used by the library for your particular purposes. You can adjust the size of the file I/O buffer using MPW C’s setvbuf function. If you do nothing, you’ll get a default buffer with a size of 1024 (1K).MPW C’s setvbuf size parameter is treated internally as an unsigned short. This means that the largest value acceptable to setvbuf for its size parameter is 65535. Larger values will be treated modulo this number. If you set the buffer size to 0, I/O is unbuffered. You can turn off buffering like this:setbuf(stream, NULL);  // turn off bufferingor like this:setvbuf(stream, NULL, _IONBF, 0);  // turn off bufferingHere are some general rules to follow to determine the size of the file I/O buffer you should use:•    If the file is small (less than 10K), you should probably use the default buffer.•    If the file is large (greater than 10K) but you write to it from your program in small pieces, buffering may help cut down the number of disk accesses. You may want to change the buffer size to around 10K. You can experiment to see whether other values provide better results for you. You’ll probably find some point where the overhead of double-buffering is more than the overhead of disk accesses — that’s when you should turn buffering off.•    If the file is large (greater than 10K) and you write to it in large pieces or write to it with one Write call, you should turn buffering off.Q    If you were omnipotent and you had a round knob that controls the value of π, what would happen to the knob as you turned it?A    Although unsure, we believe that the number of fingers on your hand would change.Q    I’m porting C code from a UNIX® platform to the Macintosh. The code uses stdlib and stdio calls such as calloc, realloc, malloc, free, memcmp, memcpy, memset, strtod, strcat, strchr, strcpy, strlen, strncat, strncpy, strrchr, fopen, fclose, fwrite, and fread. For the most part, I’ve always avoided these calls on the Macintosh since the Toolbox has equivalents. However, I’d like to know whether there are any ramifications if I use these     calls for porting. The only issues I can identify are (1) StdCLib.o, which defines these calls, uses globals and therefore will prevent me from using the code in standalone code segments, and (2) I’ll lose some file information such as type and creator. Are there any other issues that I should be aware of?A    There are various difficulties or “gotchas” associated with use of these calls on the Macintosh, which generally keep them from being used in commercial development. However, being able to cross-compile code is very useful, so people like to use the calls for portability reasons despite their drawbacks.The memory allocation calls (such as malloc, calloc, and realloc) all allocate pointer-based blocks. This works but can cause memory fragmentation and inefficient usage compared to the handle-based system usually used on the Macintosh. Also, MPW’s implementation of these calls doesn’t return memory to the Macintosh pool; when you allocate a block with malloc, the routine gets a larger block from the Macintosh with NewPtr, which it then subdivides into several smaller blocks to satisfy allocation requests. However, if the program then frees all the allocations made from this Macintosh pointer block, the library routine won’t notice and dispose of it. Although the memory remains available for reuse by the standard C allocation routines, it has been lost to the Macintosh. For details, see the Q&A about using calloc and NewPtr in the same program in develop Issue 12 and the Macintosh Technical Note “A/UX Q&As.”The file manipulation calls suffer somewhat merely because they don’t fit well into the Macintosh file system. For example, if you want to select files with the Macintosh StandardGet dialog, you’ll find that fopen doesn’t accept the volume reference or directory ID returned; it accepts a pathname, making it difficult to specify files in various folders. Also, as you noted, you have no control over types or creators; you also can’t easily associate resource forks with data forks or use a number of the more expressive Macintosh file system calls.You can use all of the string-manipulation calls (such as strcpy and strlen) and simple memory-access calls (such as memcpy and memcmp) with impunity; fortunately, bytes is bytes. Note, however, that a large number of seemingly innocuous calls (such as atoi and many others) use globals, making them inappropriate for use in cases where globals wouldn’t be available, such as in code resources.Basically, the standard C calls do work but suffer from faults, primarily because they’ve been kind of wedged into a system in which they don’t fit. While most are functional and compatible enough to be used in software safely, be aware of their drawbacks and limitations; the basic decision is whether you can provide the functionality you need with these calls and whether the extra work required to deal with them is more or less than the effort saved by avoiding wholesale modifications to the source being ported.Q    How can I detect whether a font suitcase is corrupted when it’s opened and whether any of the fonts in it are corrupted before any of the fonts are used? I know that the Finder is able to do this, and I was wondering whether Apple gives out this information. My program will run only under System 7, if that helps.A    The Finder and font architecture on the Macintosh are living things; the definition of what is and isn’t a damaged suitcase can change from release to release of system software. However, any of the following conditions makes System 7 report the suitcase as “damaged”:•    More than eight FONDs reference the same font.•    The Finder can’t create a new standalone icon object for each font in the suitcase. The usual cause of this is that two FONDs have the same name for the first 31 characters, and the Finder thinks there’s already an icon in that window with the same name. (Two icons in the same directory with the same name is a sign of damage.)•    There isn’t at least one font association table entry, or the table goes past the logical end of the resource.•    The first resource name in the map is zero-length. (This is a test for some older third-party corrupted suitcases.)•    The FOND has no name.•    The FOND doesn’t have a valid character range; ffFirstChar has to be less than ffLastChar, unless it’s a “dummy” FOND (created on the fly for old standalone FONTs, in which case ffLastChar is 0).•    All the font association table entries aren’t in ascending point size order.•    Two font association table entries reference exactly the same point size and style.•    The offsets to the width table, kerning table, and style mapping table are invalid and nonzero.•    The font ID is 0 and it’s not the system font.We can’t promise that this list is complete, but it does contain most conditions for which the Finder would report a suitcase as damaged.Q    We’d like to maintain only one version of our globally distributed application, which would adapt to the language in use by changing DITL resource text items and menu titles and items. Does the Macintosh Operating System support this?A    Currently the Macintosh Operating System doesn’t inherently support localized resources for several languages, or choose the right language according to the    localized version of the system. However, your approach of including all localized text items in the same application is absolutely feasible. Just include an option to let the user select the language — somewhere in Preferences, if not in a dedicated “Languages” menu — and design a numbering scheme for the resource IDs such that the resources to be loaded can be determined from the language code.It’s better to let the user choose the language, rather than derive it from the system. This provides for a choice in case the user lives in a multilingual region, or in case your application doesn’t include translations for the language of the user’s system.Because menus, windows, and dialogs are displayed with the system font, this approach works only for languages supported by the system script.Q    My installer creates a folder on a user’s hard disk and copies the necessary files into it. My final action atom moves the folder onto the desktop and sets its size and location. I’d also like to be able to open the folder. I call PBGetCatInfoSync to get the data into a CInfoPBRec record. Where is the state of a folder (open/closed) stored, and can I set one of the parameters in the CInfoPBRec and then call PBSetCatInfoSync to solidify the change? Using the installer to copy an open folder to the user’s drive is unacceptable because of the size and nature of the program I’m installing.A    There’s no solution for System 6; the Finder data structures are private, and there’s no call to open a folder. In System 7, you can send the Finder an Open Selection Apple event. This is described in a HyperCard stack called FinderEvents on the Developer CD Series disc. The stack also contains the source code for the XCMD used to demonstrate the Finder events. There’s another sample that you should see as well: SendFinderOpen in the Snippets folder.Q    We’re having problems with color patterns using the LaserWriter driver version 7.1.2. If we create a 'ppat' resource in ResEdit (32 x 32 bits, in this case) and then do a FillCRect to the port returned by PrOpenDoc (with color set so that it’s a cGrafPort) with the pattern loaded by GetPixPat, we get a weird pattern. Doing the same to an off-screen GWorld and using CopyBits to copy to the printer port works fine, if a little slowly. Are we missing something here?A    You need to use the FillCRect call off-screen rather than directly into the printer port, for at least two reasons. First, the LaserWriter driver doesn’t support filling objects with anything but black-and-white patterns because it uses the PostScript halftone screen functions to draw patterns. Second, the LaserWriter driver doesn’t understand (or handle) pixPats. Therefore, your only recourse is the one you discovered — to copy to and from GWorlds.    Unfortunately, FillCRect doesn’t work with the LaserWriter drivers through version 7.2. After version 7.2 this probably won’t be a problem.Q    Do NumToString and StringToNum work correctly regardless of the script chosen as the system script? When I attempt to use SANE to convert non-Roman digits from a dialog box editText item, SANE doesn’t seem to like it.A    SANE expects all digits to be in the range ASCII $30–$39, with $2D as a negative indicator. These ASCII values can be generated from any international script by using the Macintosh numeric keypad. The symbols 0 through 9 are internationally recognized as numeric values.There are many additional ways to represent numbers on the Macintosh, including words (one, two, uno, dos), notations (dozen, hundred, million), ordinals (first, second, third), Roman numerals (I, II, III), symbols (π, e, i), and hexadecimal ($FF). Many languages have alternative numbering systems and special characters that represent numbers. In Symbol and double-byte fonts, there are special characters representing fractions (1/2, 1/4), superscripts, subscripts, numbers within circles, and so on.While it would be nice to have routines that convert between ASCII numbers and alternatives such as longhand numbers (used when writing checks), Roman numerals (used for copyright year in movie credits), or local number systems (for formal documents), no such routines exist in the Macintosh Toolbox today. It would be possible but difficult for an application to custom-process numbers for each language and script. The Unicode Standard Reference, Volume 1, lists hundreds of different kinds of numbers — and they’re not all base 10.Scripts that have alternative number character sets always support the universal single-byte ASCII digits as well. When a script has alternative numeric characters, the user generally types script-dependent numeric characters from the top row of the keyboard and the single-byte ASCII digits from the numeric keypad.Although it doesn’t translate the digits themselves, the Script Manager offers support for formatting a number into a local form. For example, Europeans often use a comma as a decimal point and a period as a thousands marker. Most countries have unique currency symbols. There are many different ways to represent numerical values for things such as date, time, and money. This kind of formatting information is in the international resources.One way to do data validation is to use CharType and check for numeric characters. We can’t guarantee that this has been implemented for all scripts, but it is correct for Roman and Japanese.NumToString and StringToNum don’t deal with international formats. Use the Script Manager routines Str2Format and Format2Str to get the text into a numerical form that SANE can deal with. See Inside Macintosh Volume VI, page 14-49, for details.Q    I’m attempting to determine whether a debugger is installed, and if so, to find a THz pointer to its heap zone. Is this possible?A    The MacsBug debugger is loaded into high memory above the value found in the global variable BufPtr ($10C). Since it’s loaded into the memory that’s not managed by the Memory Manager, it’s not in a heap. The global variable MacJmp ($120) points to the debugger’s entry point.There’s also a flags byte in low memory that contains the following information:Bit 7    Set if debugger is running.Bit 6    Set if debugger can handle system errors.Bit 5    Set if debugger is installed.Bit 4    Set if debugger can support the Discipline utility.The flags byte may be in one of two places: the high-order byte of the long word at MacJmp, or the address $BFF. When MacsBug is loaded, it examines the value at address $BFF. If the value at $BFF is $FF, the system is using the 24-bit Memory Manager and the flags byte will be the high-order byte of the long word at MacJmp. If the value at $BFF isn’t $FF, the system is using the 32-bit Memory Manager and the flags byte will be at address $BFF. For information on debuggers other than MacsBug, you’ll need to contact the publishers of those products.Q    We need to localize our application for several international markets. Do you have any special tools or recommendations for us?A    You can use a System 7.1 tool called AppleGlot (on the Developer CD Series disc) to localize text in your application. Once a file has been localized the first time, the tool can compare versions and copy over everything that has stayed the same (usually 99%) so that it can focus on the text that’s different. It also creates a nice audit trail and is pretty easy to use. It should save you a lot of time.To take full advantage of this tool, you need common code for all localized versions, which is what you’re planning to do to avoid the mess of having multiple sources. Occasionally, your application might have features that make sense only on a particular script system; in that case, you can check for thatconfiguration and enable those routines when appropriate. Once you have common source and tools that help localize your application, you can add auxiliary resources for various languages.If you have only a small amount of text in your application, it makes sense to bundle everything together in one worldwide product. Apple’s TrueType fonts, for example, have internal name tables with names and information such as copyright strings in about a dozen languages. Each string is tagged with a platform, script, and language. But if you have a fair amount of textual resources, it might make more sense to have optional files and resources that can be installed as needed.Unless you intend to support every script and language, you’ll probably want to have a set of resources for unavailable languages. You can pick whatever language you want for this other set (English is popular), but the trick is to use only 7-bit ASCII characters. All script systems use the same character codes for the range $00–$7F, which match ASCII. It’s the 8-bit characters that differ radically. This means that text that includes characters like …, ™, ©, and • will not display properly on non-Roman script systems. Just substitute text such as . . ., tm, (c), and * for them. You can decide what’s appropriate and necessary.Another thing to consider is checking for and supporting secondary script systems in your application. The Macintosh Toolbox doesn’t fully support secondary scripts such as Japanese menus on an English system, but your application can support secondary script data even with the current Toolbox limitations, by using styled text commands.Q    We would like to use the “dogcow” icon in our Page Setup dialog. Is the dogcow trademarked, and are there any restrictions on using this icon in our software?A    Yes, the dogcow logo (along with its call, “Moof!”) is a trademark of Apple and is proprietary. The dogcow appears on Apple’s Developer CD Series disc and in other material. Apple has a pending U.S. registration on it. Accordingly, it’s not available to third-party developers as an icon or file symbol.Q    Where in the world does the dogcow come from?A    Some people say that the dogcow hails from the sunny shores of the Middle of Nowhere. This location in the south Atlantic can be found in the Map control panel; simply type “Middle of Nowhere” and click Find. (For a small fee, these same people will tell you where they last saw Elvis.)KON & BAL’S PUZZLE PAGE BOOTING BLUESKONSTANTIN OTHMER AND BRUCE LEAK After answering a question they tantalizingly left hanging in Issue 12 of  develop, Konstantin Othmer (KON) and Bruce Leak (BAL) go on to present yet another programming puzzle in the form of a dialog between them. The dialog gives clues to help you. Keep guessing until you’re done; your score is the number to the left of the clue that gave you the correct answer. These problems are supposed to be tough. If you don’t get a high score, at least you’ll learn interesting Macintosh trivia.KON    So have you figured out what’s the fewest keystrokes needed to do an ExitToShell from MicroBug?BAL    Aren’t you at least going to say “Good morning”?KON    Good morning, BAL. Well . . .?BAL    Well, you can do it by calling through the trap table, or by doing an SM PC A9F4 and then G.KON    Good idea, but that definitely won’t work if you’re in ROM, and it could really hose you if you’re somewhere in the system and you modify RAM-based system code.BAL    How about if you jump to the bus error vector by doing a PC=@8, and then G?KON    MicroBug, not MacsBug! It can’t do indirection. What do you think the “Micro” stands for?BAL    Fine. Manually set the PC to the address at 8.KON    Four keystrokes for the DM 8, eight keystrokes for the PC=XXXXX, and another one for the G. I’m not even counting all the return characters. But it works great.BAL    OK, OK. PC=-1, G. That will cause a bus error and MultiFinder will deal with it as long as MultiFinder is in a reasonable state at the time.KON    Come on BAL, that’s six keystrokes. You can do better than that.BAL    OK. G -1 does the same thing in four keystrokes. Beat that!KON    Not bad — but I can crash that machine in three keystrokes. G -1 is the best you can do for a bus error, but you can get an address error in three strokes: G 1.100    BAL    Fine. If you think you’re so smart, figure this next one out: We got our QuickTime 1.5 test disc back and I decided to try it out on System 6. I took a Macintosh si we used for development and downgraded it from System 7 to system software version 6.0.7. After I installed QuickTime 1.5 from our test disc, the machine crashed at boot time.KON    You crashed while QuickTime was loading, right?BAL    Your puzzle, KON.KON    Hmmm. So I reboot with the Control key down to get into MacsBug. Then I do a        atb HOpenResFile ';dm @(sp+2); g    and see what was the last resource file that was opened. That way I can find who’s causing the crash.BAL    System 6, future boy.KON    OK, so I use        atb OpenResFile ';dm @sp; g90    BAL    Surprise, surprise — it’s QuickTime. You could have just used the File dcmd after you crashed and noticed that the QuickTime file was still open.KON    So you have some other INIT in there that’s got a conflict with QuickTime 1.5. Boot with the Shift key held down and throw out everything else.BAL    Take a hike. This is System 6. Your brain’s gone soft.KON    Well, just use the skipInits macro.80    BAL    Sorry, I don’t have that one.KON    D’oh! [Watch The Simpsons for correct pronunciation.] So I skip over all the INITs by making them fail using    atb GetIndResource @(sp+2) = 'INIT' ';sp=sp+6; @sp.l=0; pc=pc+2; gBAL    Wow! How’d you whip that one up?KON    I just checked out page 326 of that excellent book, Debugging Macintosh Software with MacsBug. You know, it tells you all about how INITs work in both System 6 and System 7, it even . . .75    BAL    Yeah, yeah, yeah. More shameless self-promotion. I have the Dimmer and Programmer’s Key INITs, Apple CD-ROM stuff, AppleShare, and QuickTime, of course.KON    So throw all those INITs out of there except QuickTime, and go buy Delta Tao’s WonderPrint since you need it anyway.70    BAL    You still crash, same time, same place, same channel.KON    Try it without QuickTime. Maybe System 6 didn’t get installed correctly.65    BAL    Boots fine.KON    So either this copy of the INIT is bad or QuickTime 1.5 is lame under System 6. Try the INIT somewhere else.60    BAL    I have a System 6 LC and a System 7 si, and that copy works fine on both, especially the new compact video compressor. Totally awesome. I can’t believe we give it away for free. Windows: $99; QuickTime: free. Go figure.KON    So what’s the difference between the two si’s, other than one is running System 7? Does either have that FPU-NuBus slot adapter?55    BAL    No slot adapter. Both have 4 megs.KON    Same video mode? Both booting in 24-bit mode?50    BAL    Good question, but the System 7 version works fine in 24-bit mode, and the monitor depths are the same.KON    So maybe there’s some kind of boot block problem, or some other conflict arising since the machine was downgraded. Convert the other si to System 6 and try it.45    BAL    OK, works fine.KON    So what you’re telling me is you take two si’s, install System 6 on both from the same disks, neither has any external hardware or INITs, and when you install QuickTime, one crashes and the other doesn’t. BAL    Your puzzle, KON.KON    Same system, same INITs, same hardware — there must be some state that’s different. Something is funny about PRAM: the addressing mode, disk cache size, sound volume, default video mode, network settings, mouse speed. One of those things must be hosing us.40    BAL    Well, which ones do you want me to change? I don’t have all day.KON    Put them all back to their default state with Command-Option-RP (Reset Pram) at boot time.35    BAL    Fine. I do that. While booting it reboots, letting you know it cleared PRAM. Then one crashes and the other one doesn’t.KON    I swap hard disks.30    BAL    The crash follows the hard disk.KON    So maybe there’s something funny going on with MacsBug. Are the versions the same?25    BAL    The versions are the same, but one is black text on white and the other is blue text on black.KON    I get it. Just pull MacsBug out.20    BAL    Boots fine. OK. So what’s the answer?KON    There’s something going on with Debugger Prefs.15    BAL    How could they affect things at boot time?KON    The FirstTime macro or the EveryTime macro.10    BAL    I don’t have either.KON    Dcmds get an initialization call and one of them is hosing the system. It’s probably not System 6 friendly.BAL    OK. So how do you figure out which one is causing the problem?KON    Keep taking them out half at a time until you find the problem, or just look for the skanky ones Darin wrote. BAL    Yeah, there was a dcmd in Debugger Prefs that was used for debugging System 7 patches. QuickTime uses the same loading mechanism as some of the System 7 patches, and this dcmd overrides the loading mechanism for debugging purposes. So the dcmd assumed a System 7 runtime environment, which turned out to be a bad assumption.KON    Nasty.BAL    Yeah.INDEX    AActivatePalette  91“Adventures in Color Printing” (Hersey)  64–90Alexander, Pete (“Luke”)  52aliases, Macintosh Q & A  109–110Angus User Area, QuickTime and  38, 39application heap, asynchronous routines and  29-30'Asm ' resources, QuickTime and  37, 38, 39assembly language, debugging and  58–59asynchronous routines  5–30“Asynchronous Routines on the Macintosh” (Luther)  5–30A-traps, QuickTime and  34–51Bbanding, color printing and  73–76BeginUpdate, DeviceLoop and  99, 100black and whitecolor printing and  82–85palettes and  93–96Blat, debugging and  58–59booting, KON & BAL puzzle  118–121bottlenecks, QuickTime and  45–51Boyd, Scott  10CC, Macintosh Q & A  110–112call chaining, asynchronous routines and  18cGrafPorts, color printing and  64–90Chooser, QuickDraw GX and  53'clok' component, QuickTime and45    CloseResFile, debugging and  55Color Adventures sample, color printing and  69Color ImageWriter Adventures sample, color printing and  77, 78, 81color patterns, Macintosh Q & A  114–115color printing  64–90Color QuickDrawcolor printing and  64–90DeviceLoop and  99palettes and  92color tablescolor printing and  75palettes and  91–96completion routines, asynchronous routines and  6, 10–15, 29component bottlenecks, QuickTime and  47–51Component Manager, QuickTime and  34–51components, QuickTime and  34–51CopyBitscolor printing and  67, 68, 74, 76–77, 79Macintosh Q & A  114–115copying files, Macintosh Q & A  110custom dialogs, QuickTime and  32CustomGetFilePreview, QuickTime and  32, 41, 45DDAs, Macintosh Q & A  104data reference limitations, QuickTime and  31“Deadlock” (Sheridan)  7Debugger routineasynchronous routines and25QuickTime and  45            debuggersasynchronous routines and  25Macintosh Q & A  116debugging  54–60asynchronous routines and  25–26KON & BAL puzzle  118–121QuickTime and  34–51debugit, QuickTime and  37, 38DebugStr, asynchronous routines and  25Deferred Task Manager, asynchronous routines and  6delay time, Macintosh Q & A  105–106DelegateComponentCall, QuickTime and  49, 50Dequeue, asynchronous routines and  15, 18desk accessories (DAs), Macintosh Q & A  104DeviceLoop  97–103DeviceLoopInDrag, DeviceLoop and  100“DeviceLoop Meets the Interface Designer” (Powers)  97–103Device Managerasynchronous routines and  7, 11, 12–15Macintosh Q & A  104DisposeHandle, debugging and  55, 56–58Dispose Resource, debugging and  57–58ditherCopy method, color printing and  82dithering, color printing and  82–85DITL resource, Macintosh Q & A  113–114DoPPCInform, asynchronous routines and  12, 21, 23DoPrint, color printing and  89    Double Trouble, debugging and  55–57Draw, DeviceLoop and  102DrawPicturecolor printing and  73, 76, 78, 80QuickTime and  46DrawProc, DeviceLoop and  99, 100driverscolor printing and  64–90Macintosh Q & A  104dynamic state, QuickTime and  43–45Eelapsed times, Macintosh Q & A  105–106EndComplete, asynchronous routines and  21, 23, 24EndUpdate, DeviceLoop and  99, 100Enqueue, asynchronous routines and  15, 18ExitMovies, QuickTime and  31–32extended parameter blocks, asynchronous routines and  18–20, 25–26, 28–29Ffile I/O, Macintosh Q & A  110–111File Managerasynchronous routines and  6, 7, 11, 12–15Macintosh Q & A  104, 110–111filenames, Macintosh Q & A  104FillCRect, Macintosh Q & A  114–115Final Adventure sample, color printing and  70, 89    FinderDeviceLoop and  97Macintosh Q & A  113FindNextComponent, QuickTime and  42–43fonts, Macintosh Q & A  113font suitcases, Macintosh Q & A  113ForeColor, color printing and  76FrameOval, palettes and  91–92FSWrite, Macintosh Q & A  109“Function Results and Function Completion” (Boyd and Luther)  10GGDevices, color printing and  66–67, 74Get1IndResource, QuickTime and  41, 42Get1Resource, QuickTime and  41, 42Get1xResource, QuickTime and  41GetA0, debugging and  59GetBestDPI, color printing and  70GetCompressedPixMapInfo, QuickTime and  46GetCTable, color printing and  77GetImageRes, color printing and  69GetMovieNextInterestingTime, QuickTime and  31GetNewWindow, QuickTime and  42GetPBPtr, asynchronous routines and  13GetPixPat, Macintosh Q & A  114–115GetResource, QuickTime and  41, 42, 43GetRslData, color printing and  69–70     grafPort bottlenecks, QuickTime and  46grafPorts, color printing and  64–90“Graphical Truffles” (Lee and Tanaka)  91–96Guschwan, Bill  34GWorlds, color printing and  69, 73–77, 78, 79HHalftone Adventures sample, color printing and  82, 83, 84halftoning, color printing and  82–85HandlePPCErrors, asynchronous routines and  21, 24hardware devices, QuickTime and  33heap zone, Macintosh Q & A  116Hersey, Dave  64Huxham, Fred  54IImage Compression Manager, QuickTime and  35Incompatibility Test, color printing and  73InformComplete, asynchronous routines and  21–22INITs, Macintosh Q & A  104InitZone, debugging and  57“Inside QuickTime and Component-Based Managers” (Guschwan)  34–51installers, Macintosh Q & A  114interface design, DeviceLoop and  97–103internal routines, QuickTime and  39–43interrupt handlers, asynchronous routines and  6interrupt time, asynchronous routines and  6, 27–28    JJohnson, Dave  61K“KON & BAL’s Puzzle Page” (Othmer and Leak)  118–121Llanguage, Johnson ponders  61–63LaserWriter driver color printing and  75QuickDraw GX and  52–53LaserWriter driver 7.1.2, Macintosh Q & A  114–115LaserWriter Font Utility, QuickDraw GX and  52, 53lazy person’s halftone method, color printing and  83–85Leak, Bruce  118Lee, Edgar  91List Manager, DeviceLoop and  97localization, Macintosh Q & A  113–114, 116–117Luther, Jim  5, 10MMacApp, Johnson ponders  61–63“Macintosh Debugging: The Belly of the Beast Revisited” (Huxham and Marriott)  54–60Macintosh Q & A  104–117MacsBugKON & BAL puzzle  118–121QuickTime and  34–51Marriott, Greg  54matrix routines, QuickTime and  35MaxApplZone, QuickTime and  33memorydebugging and  58Macintosh Q & A  104    Memory Manager, debugging and  55, 56, 57–58MicroBug, KON & BAL puzzle  118–121MMU, debugging and  58, 59'moov' resource, QuickTime and  41, 42mounting volumes, Macintosh Q & A  109–110movie controller, QuickTime and  33MoviePlayer, QuickTime and  41, 45, 50moviesdebugging and  57Macintosh Q & A  107QuickTime and  31–33Movie Toolbox, QuickTime and  32, 35, 41, 45MPW C, debugging and  59multiple monitors, DeviceLoop and  97–103'mxbm' resources, QuickTime and  37, 38, 39Nnatural languages, Johnson ponders  61–63NewMovie, QuickTime and  42NewMovieFromDataFork, QuickTime and  42NewMovieFromFile, QuickTime and  41, 42, 43, 45NewMovieFromHandle, QuickTime and  42NewMovieFromScrap, QuickTime and  42NewTimeBase, QuickTime and  45NewWindow, QuickTime and  42NuMathComponent, QuickTime and  48–49NumToString, Macintosh Q & A  115–116    Ooff-screen GWorlds, Macintosh Q & A  114–115OffsetRect, debugging and  58“one size fits all” approach, color printing and  65–66Open, Macintosh Q & A  104OpenComponent, QuickTime and  43OpenCPicture, color printing and  69, 78, 80OpenDefaultComponent, QuickTime and  43OpenPicture, color printing and  78operating system queues, asynchronous routines and  15–18Othmer, Konstantin  118PPalette Manager  91–96palettes  91–96'PAPA' resource, QuickDraw GX and  52–53PBGetCatInfo, Macintosh Q & A  105PBGetCatInfoSync, Macintosh Q & A  114PBHOpen, asynchronous routines and  6PBSetCatInfoSync, Macintosh Q & A  114PBVolumeMount, Macintosh Q & A  109–110PDEF resource, QuickDraw GX and  52–53PICT resources, DeviceLoop and  99, 102PICTs, color printing and  69, 73, 80, 81pictures, Macintosh Q & A  106Picture Utilities Package, QuickTime and  46    pixMapscolor printing and  64–90Macintosh Q & A  106'pltt' resource, palettes and  91–92pmAnimated, palettes and  93PmBackColor, palettes and  91, 93pmCourteous, palettes and  91–92pmExplicit, palettes and  93, 94, 95PmForeColor, palettes and  91, 92, 93pmTolerant, palettes and  92–93, 94PollForCompletion, asynchronous routines and  8, 9polling, asynchronous routines and  8–10, 29–30PostScript, QuickDraw GX and  52PostScriptHandleDemo snippet, QuickDraw GX and  52'ppat' resource, Macintosh Q & A  114–115PPCClose, asynchronous routines and  20PPCEnd, asynchronous routines and  23, 24PPCInform, asynchronous routines and  5, 8, 9, 11, 12, 20, 21–22, 23PPCRead, asynchronous routines and  20, 21–22, 24PPC Toolbox, asynchronous routines and  5, 7, 11–12, 13, 20PPCWrite, asynchronous routines and  24PrCloseDoc, color printing and  87PreCompletion, asynchronous routines and  14prerolling a movie, QuickTime and  32PrGeneral, color printing and  69–70, 71, 74, 80    printer access protocol (PAP), QuickDraw GX and  52, 53printer drivers, color printing and  64–90“Print Hints” (Alexander)  52–53printing, color printing  64–90Printing Managercolor printing and  67QuickDraw GX and  52, 53PrJobDialog, color printing and 87ProcessPPCData, asynchronous routines and  21, 23programming languages, Johnson ponders  61–63PrOpen, color printing and  86–87PrOpenDoccolor printing and  67, 86,87Macintosh Q & A  114–115PrPicFile, color printing and  87Puzzle Page  118–121QQ & A, Macintosh  104–117QuickDrawpalettes and  93QuickTime and  45, 46QuickDraw GX, print hint  52–53QuickTime   31–33, 34–51debugging and  57KON & BAL puzzle  118–121Macintosh Q & A  107Rrace conditions, asynchronous routines and  16ReadComplete, asynchronous routines and  21–22ReleaseResource, debugging and  57–58ResEditMacintosh Q & A  114–115palettes and  92    resolution, color printing and  69–72, 82Resource Managerdebugging and  55, 57–58QuickTime and  39–42, 43RGBColor, palettes and  91, 93RGBForeColor, palettes and  92, 93SSANE, Macintosh Q & A  115–116scalingcolor printing and  69–72movies and  32Separations Test, color printing and  80SetA5, debugging and  59SetGWorld, color printing and  73SetPalette  91SetPort, color printing and  68Sheridan, Gordon  7Smart Friends, debugging and  59–60“Somewhere in QuickTime” (Wang)  31–33stack space, asynchronous routines and  27–28standard movie controller, QuickTime and  32StdPix, QuickTime and  46Str63, Macintosh Q & A  105Str255, Macintosh Q & A  104–105StringToNum, Macintosh Q & A  115–116'STR ' resource, QuickDraw GX and  52–53SyncWait, asynchronous routines and  26System 6, KON & BAL puzzle  118–121System 6.0.7, KON & BAL puzzle  118–121    System 7KON & BAL puzzle  118–121Macintosh Q & A  104, 113UTILs and  53system heap, Macintosh Q & A  104system script, Macintosh Q & A  115–116'sysz' resource, Macintosh Q & A  104TTanaka, Forrest  91TeachText, color printing and  73, 80thing dcmd, QuickTime and  43, 50–51'thng' resource, QuickTime and  42TimeBase, QuickTime and  45Time Managerasynchronous routines and  6Macintosh Q & A  105–106TMON Pro, QuickTime and  34–51trapping, QuickTime and  34–51“true” halftone method, color printing and  83UUNIX, Macintosh Q & A  111–112UTILs, print hint  53VVBL tasks, asynchronous routines and  6, 29–30“Veteran Neophyte, The” (Johnson)  61–63video media pixel depth, Macintosh Q & A  107    W, X, Y, ZWaitNextEvent, asynchronous routines and  27, 29Wang, John  31Window Manager, DeviceLoop and  97, 98    WANT TO WRITE FOR develop?YOUR NAME AND ELECTRONICALLY RETOUCHEDPHOTO HERE    We’re always looking for people who might be interested in writing an article or a column for develop. If you’d like to take advantage of this opportunity to spotlight and distribute your code to thousands of developers of Apple products, with a result that you’ll be proud to show your colleagues (and Mom), please read on.WHAT TO WRITEThink about writing an article like the ones you see in this issue, usually ranging from 6 to 30 pages in length, or just a short column (say, 2 to 4 pages). Typically you’ll expound on source code that readers will get on the Developer CD Series disc.We encourage authors to write in a light, humorous style; we’ll try to refrain from editing out your jokes!WHO AND WHAT CAN HELP YOUA content editor and technical editor will work with you on your article, and an illustrator will work on any illustrations. A review board will give feedback on your first draft, and numerous technical reviewers will look for errors. Once things come together in the final draft, a copyeditor will go over it all.Not only will you have an opportunity to review your article at several stages, we rely on you to answer questions and in general to review all changes carefully.WHAT TO DO NEXTSend an abstract and an outline to AppleLink DEVELOP, or to Caroline Rose, Apple Computer, Inc., 20525 Mariani Avenue, M/S 75-2B, Cupertino, CA 95014. We can send you our Author’s Guidelines along with information about timing and the scoop on our incentive program.So don’t just sit on those great ideas of yours . . . send ’em along to us!    HOW'RE WE DOING?  We'd love to hear how you feel about develop. If you have any questions, suggestions, or even gripes, please don't keep them to yourself. (Be sure to include your name, company name, address, and phone number.)Send editorial suggestions or comments to AppleLink DEVELOP or to:Caroline RoseApple Computer, Inc.20525 Mariani Avenue, M/S 75-2BCupertino, CA  95014AppleLink:  CROSEInternet:  crose@applelink.apple.comFax:  (408)974-7084    Send technical questions about develop to:Dave JohnsonApple Computer, Inc.20525 Mariani Avenue, M/S 75-2BCupertino, CA  95014AppleLink:  JOHNSON.DKInternet:  dkj@apple.comCompuServe:  75300,715Fax:  (408)974-7084    WANT TO SUBSCRIBE? CHANGE OF ADDRESS? SUBSCRIPTION QUERIES?For all your subscription-related needs, see the subscription card, or AppleLink DEV.SUBS.WANT TO WRITE FOR develop?  If you'd like to contribute an article or column to develop, please see the blurb on the reverse page.BACK ISSUES OF develop are on the Developer CD Series disc. To get printed back issues, send $13 per issue in the U.S. (or $20 outside the U.S.) to the address on the subscription card.Issue 1  Realistic Color for Real-World Applications; The Palette Manager; Offscreen Worlds; Perils of PostScript; Compatibility Rules; Debugging Declaration ROMs; Apple II Development DynamoIssue 2  C++ Objects; Object Pascal; The Memory Manager; MacApp; How to Design an Object-Based Application; Unofficial C++ Style Guide; Demystifying the GS/OS CacheIssue 3  ISO 9660 and High Sierra; Creating a Mixed-Partition CD; Accessing CD Audio Tracks; The Comm Toolbox; Macintosh Display Card 8•24 GC; PrGeneralIssue 4  Writing a Device Driver in C++; Polymorphic Code Resources in C++; The Macintosh Coprocessor Platform and A/ROSE; Perils of PostScript — The Sequel; An Apple IIgs Printer DriverIssue 5  Volume 2, Issue 1)  Asynchronous Background Networking; Scanning From ProDOS; Palette Manager Animation; Macintosh Common LispIssue 6  Threads on the Macintosh; QuickDraw’s CopyBits Procedure; MacTCP Cookbook: Constructing Network-Aware Applications    Issue 7  QuickTime 1.0; TrueType; Threaded Communications With Futures; Using C++ Objects in a World of Exceptions; The Subspace ManagerIssue 8  Curves in QuickDraw; Validating Date and Time Entry in MacApp; Macintosh Debugging; Macintosh Hybrid Applications for A/UXIssue 9  Color on 1-Bit Devices; The TextBox You’ve Always Wanted; Making Your Macintosh Sound Like an Echo Box; Simple Text Windows via the Terminal Manager; Tracks: A New Tool for Debugging DriversIssue 10  Apple Event Objects; PostScript Enhancements for the LaserWriter Font Utility; Drawing in GWorlds; The Optimal PaletteIssue 11  Asynchronous Sound Helper; Around and Around: Multibuffering Sounds; Living in an Exceptional World; The NetWork Project: Distributed Computing on the MacintoshIssue 12  Techniques for Writing and Debugging Components; Times Bases: The Heartbeat of QuickTime; Better Apple Event Coding Through Objects; Another Take on Globals in Standalone Code    Subscribe to printed develop Would you like to become one of our many subscribers who like to have a paper copy of develop at their fingertips? Subscribing is easy; just follow these simple instructions: •    If you’d like us to bill you, fill out the form in this file and send it via AppleLink to DEV.SUBS, or print and fill it out, check “Please bill me,” and send it by mail to the address on the reverse.•    If you’ll be paying by credit card, fill out the form and send it via AppleLink to DEV.SUBS, or print and fill it out and mail it to the address on the reverse.•    If you’ll be paying by check, money order, or international money order, print the order form, fill it out, and mail with payment to the address on the reverse.Don’t send cash. And please use a separate form for each subscriber.Subscribe & Save 25%Yes! Send me a year (4 issues) of develop and the Developer CD Series disc for only $30 in the U.S. That’s 25% off the cover price. All other countries $50. Name:Company/Institution:Title:Street or Post Office Address:City:State/Province and Zip Code:Country:Telephone:____ Please bill me.        ____ Payment enclosed.____ VISA    ____ MasterCardCredit card account number:Credit card expiration date:______________________________________Signature/Date (only if sending by postal mail)Phone orders call        1-800-877-5548 in the U.S.                (815)734-1116 all other countriesFax orders to        (815)734-1127AppleLink orders to    DEV.SUBSAllow 6–8 weeks for delivery. U.S. subscription price is $30 for 4 issues of develop and the Developer CD Series disc. All other countries $50. For Canadian orders, price includes 7% GST (R100236199). Please make check payable to Apple Computer, Inc., in exact amount in U.S. dollars, and mail to:        develop        Apple Computer, Inc.        P.O. Box 531        Mt. Morris, IL  61054-7858        USAB393DRESOURCESApple provides a wealth of information, products, and services to assist developers. The Apple Programmers and Developers Association (APDA) and Apple Developer University are open to anyone who wants access to development tools and instruction. Qualified developers of commercial products in the U.S. and Canada may access additional information and services through the Apple Associates and Partners programs.    The Associates Program, Apple’s mainstream program for developers of commercial products, is a convenient and cost-effective way to get essential technical and marketing information. This program offers self-help technical support, keeps you up to date with the latest products and technical documentation, and gives you access to the Apple developer community through AppleLink. Associates also receive discounts on equipment. The Associates program is designed for developers of commercial Apple-compatible products.The Partners Program is open to Apple-selected developers of commercial products. In addition to receiving the same development information and tools as Associates, Partners receive technical support via electronic mail. Membership in the Partners program is limited to developers who directly contribute to Apple’s long-term product strategies and business objectives. APDA offers convenient worldwide access to development tools, resources, training products, and information for anyone interested in developing     applications on Apple platforms. Customers receive the quarterly APDA Tools Catalog featuring over 300 Apple and third-party development products. There are no membership fees. APDA offers convenient payment and shipping options, including site licensing. Apple Associates or Partners automatically receive the APDA Tools Catalog.Apple Developer University (DU) provides training for all levels of Macintosh programmers. Developer University classes give you experience using the most up-to-date development tools. Developer University offers classes at U.S. and international locations and through DU Extension partners. On-site instruction can also be arranged for selected courses. Multimedia self-paced courses are available from Developer University through APDA. DU course offerings include System 7 extensions, object-oriented and procedural programming, and new technologies, such as PowerPC.    ”|◊#ˇ ˇˇˇˇ#◊ 
  2. d,     Helvetica<.°dONLNd)Ÿe˛+˜vd°dONLNd) e-)3e°dONLNd);e\)/v°dONLNd)jeã)/e°dONLNd)ôe™)/l°dONLNd)∏e›)o°dONLNd)Îe)3p°dONLNde›tÊ(è˚T°dONLNd    eÎtÛ)h°dONLNd
  3. e¯t)e°dONLNd et) °dONLNd et)A°dONLNdet#)p°dONLNde(t0)p°dONLNde5t8)l°dONLNde=tE)e°dONLNdeJtM) °dONLNdeRt[)T°dONLNde`th)e°dONLNdemtt)c°dONLNdeytÅ) h°dONLNdeÜté)n°dONLNdeìtñ)i°dONLNdeõt¢)c°dONLNdeßtØ) a°dONLNde¥t∑)l°dONLNdeºtø) °dONLNdeƒt )J°dONLNdeœt◊) o°dONLNde‹t‰)u°dONLNdeÈtÓ)r°dONLNd eÛt˚)
  4. n°dONLNd!et)a°dONLNd"et)l
  5. Ó6DDöˇÇVHHVÓ6DD@=®1% „ „$„9á=ß)$„5f-$√9á)5f-$-$ „-E5f1E5f-$5f%1E£ √9à9®-%)-E9à=®A…9® √N,EÍ5g9á9àA…-%-%J =®-%1E1%-%5f5g-$=®-%9á1E$„$„£√9Ü)1E$„√9áEÈ5f¢)=®5f£=®9á1f5g5f9á=®5g$„b1F1E√£9á=à)5f1E5g-E9á5f5f)1E1E9á √1f1E5f¢5á1E5f)=à-% „$„5á)-$-%$„1e$„-%1$¬-%-$)) √ ¬F 1E√$„$„1E9á$„)=á-$Ç9á)9á √ √ „5f-%-$5f5f1%$„5á£√1E$„) „%5f=®-%-$b=®-$1E)-%1E „-$=à5f$„1E1E „-%5g$„1E1f9á1E$„-$Ç ‰5F-%-$$„¬=®A…1EÇ1F=®-$¢=á1E1E1F1f-%9á1F)b))¢£5f5f$„1E5g5f1F=®9á1E)1E9á=®√-$5f5f¢=ß1E5F)9á-%)$„5f-%)1E$„-%$„-%)$„-$1%))¬)EÈ-%¬ „T£9Ü)-%$‰)1F)¢√1E-%)9á%=®-$1E£ B√$‰-%)$„)-$¬1F5g9á5g) √ ‰EÍ=®5g5gA A…5g=à5g=®-%=®F =®5f1F1EÇ-%=®5g1E%=®=®1F9g-%Ç5f5f1F) √ √5fJ ¢£F =®$„5g9à1E9à5g=®=®9á˛1FT9á-%-%)9á1E1E=á5g-E1E-% „% √$„)Ç)1E=à √-$-$)%1E¢)¢1E) √5f9á5F1F9á5f))-E1E-$ b√9á √9á))5f1E¢)9á1f-%A®)=à „-%¬Ç£ ‰)$„ √-E1%¢$„)-$-$ÇÇÇ9á-$-E$„)˝-$\1E √-$=®-$1E-%-$!1F5f-$„)5fA…=á9g)£1F1E-$ „£ „1E9á£√5g5f √5g5f1E5f1F1E9á9f1f)5á9á1E5f-%A©)5fA…9á5g1F1E$„-$)%)Ç)1E1f „-$-$)$‰1E√%√--$¢1E1D1E5f9á5f-%)1E)1E!%=®$„1f „-$=®Ç√ „%)-$ „ √9á5f)9á „1F)9f-% „% „1EA®1E1F9à1F9á=®5gEÍ5g-%IÎ9à=®1F=®=®9à9®-%5f5á „1fN,=à5f=®5f „¢5f)) „) „1E-% „)%9á%$‰5f)%)5f „1E1f5á=®5g√=®J 5g9à5fA©9á1f-%9à)$‰5g1f9á¢-$√1E9á=® „¢)1E1E!%1E=®) √ ¬$„ √9®)5f5f-$¬)$a1E √$„% „5f „=á1E$„ √)5f¢%Ç√-$1E „)9á9á-$9à$„5f$„=®9á%% „1E9á$„5f=ß-%-$1f-5f√)A»-$-$%))-$)√)-$¢-$=®$„-9á1F √ „5f-$$„)-$5f1F5f$„1%1E)¬1F)-%)-%√))-$5f5f¢9á9á1F1E1%A…1F-$1E5g-%-%=®9á=® √1F$„1E1E9á „ √)9á-$ B-$-%9á-$$„ √$„ √1E)9á5f)% √ B1E√ ¬)$„9á¬A»-%¢¢1E9á√-$Ç%-%1E5f9á1E5f5E%b)Ç „1E1f-$1F1E9á%-%9Ü-%9á5g1E ‰1E=®)$5gEÍ))5g5f9à-%RM=®5g5fJ %% √$‰1EA®√A…%5f¢-%=®-$1E-$%5f-%-%1E5f „5f1E5g%=®9á-%1E9á)$A…-% ‰5áF 5f-%=®9à1E9á5g%9á „√ √ „-% „£ ¬-%-$=®5f1E9á%-$ „√-$1E1Eb-$5f-% „%$„-$ „√Ç1E$„5f9á%1EÇ5f1E-$b¬=®1F1E)1E)1% „b √Ç$„5f1%-$)5á=á-1E1f √1E1E9á√1E5f)$„9ᢣ-$1E-%)A»-% √1E=®£££Ç%-E£5f1E=á√1F9á)9á-$1F5f1F-$1F9g)1E1E9á)=®5f$„1E-E$„=®%É1E9á1E √5f-%1E5f5f „5f „£¢ „% ‰¢√ „-$=®=®-%9á)1E¢£-$5g5fÇ1E1F „)$ „%5f-%¬Ç5f$„5f5f-$5fÇ9á1E √b$„9á4A®%=®-$ „1F1E-$=®5f1E-%$„)1E))√5f5F1F1F √%1f-$ „ BA»9á=®1F9á9á5fA…J 1F1E9á1F9à=®£)=®=®9à1E-$)5f¢˛)1E√=á%=®5f „1F¢-$5f=®¢9á9á5g1F5f1f1f9á%N,J %Ç)9à5á1F=®5f1E√5g)5f1E1F9á5f5f-%1F$„1%9á1F1F5f5F¬1E5f1f=®-$)1F5f1EÇ1E=à)1E1E-%)9f¢ „ √$„√Ç-$A… ¬=®-$1E-$1E ¬5f)=á-%$„ √-$)-$¢1E-$5g1E√ „1E ¬ √!9á5g5f%5f-$1E1F9á √-%5f))-Ea)-$-%-$5f% „U%Ç „% ¬1E¢5f¢9Ü5f √1%Ç)=à=®√5f=®1E1E-$1F1E1E¬EÍEÍ$„Ç)5g5f%-$1E5f√A® √A…)1F1E1E9á=®5f√)$1E1E5á1E=á)1F)-%1F1E)1E1f-$¢5f5f-$5f9Ü1E)1E£Ç¢%$‰¢1E=ß%=®)1E-$)$„ „-%1E$„-$)9á-%-%5f9á))%-$-%1E-%%=®9á-%9á=ßbA»9áEÍ9à%1F=®)5g1f5g%1FRMEÍ5f=®5g9á5f5gA…=®-$-%=®EÍ-% √-%5fÇ-%9áA…5g-% ‰1F5fb5á1f5f=®9á9á5g5gEÍ-$9à1F)1F5á9á1F=®9à1F%5f-%)=®1F5f%9á)$)$„-$)1F)-%))-%1f-%Ç √-%=®))A»)¢9á9Ü)$„√-%=¬9á1E-% √-$) „-$1E9á1E-$) „A»5f1E=®-$-$)-$))-$1E$‰9á-$)1E) A9á1%=®-$√)9á „$„%1E A¢=®=®)1F$„-$)-$5f1E √-$1EA®$‰˛)Lb1f9á=®)%) √5f5fÇ=®1E-E9á5f9á)5f-%)9á9á1E1F9à9á¢-E9á1E¢1F)1E=®5f1F1FA®=à$„$„))1F1E-$9á5f1E$„-%) √√)5g-%-$=®¢$‰9á=ß% √¢=ß √9g-$)`1E-$)-$5f9á-$1f √$„-$1E$‰))) „5f9á=à))-F5f-$£ √9á$„-%-%)-$Ç-%$‰1f9à-$Bk51I%A A… √5fA…9à-&=à5f9á-E1E5g1E-%§$‰1fA»)$-E „1E1f1g-F9á)5f1E9á¢5g-%1g1F9á1F)-%EÍ1F$Êow)9á-$)A…J -$1F)&$„Eͬ$‰-$5g¬5f%=à-$ √√)$„-$-$%-%$„5fA…-$)-$√ ‰%9á%a)=á9á EÏswÇ1E-$9á1E=®$„-%%)5f1f-$ √-$-$)-F5f9á))5f1E1EÇ%5f¢ ¬-%1E ‰ A √ƒ)1$$„£)-$Ç B^±f“¢1F9á=®5f1E1E£1F5f5f$„ba5fA»$‰)√-1F=á)5f))%-F5E¬5f1E1E5f5f) Â-$=®9á1F1F%F    bk55äA…-1F5f-%=®√ ƒ5f5g)=®-$=®5f$„$Â%$„-$1E-$1E$„5f-%-%$„)¬b √1E£√-&=®5f „¢$„¢ ‰ ≈sw%9á-$5fZ≥)EÍ9á1E-%1E1D5äkV-$)$$„Ç5f)-$-wô√5g1E√)EÍEÍÉwπ5h)$9à=®J 9áƒ9hswRO))-%-%A…5gƒk5=™1EEÍ9à5á1E5g ‰VëRë%1E1%9á ‰ ƒ1FJbÙÇ=®$„1f1FEÍ$‰5Hwò%1F=©)$-%=à§N oW5ä9á-%É-$1EEͧwπ1FaA®¢9á5f=ábsx9â-%9áA»EÍ5f)§bÙF1$%5f£)9á ‰VêJ/-$%-%% √1EÉZêUsò-')$„b „5fEÈ-(oô-$5f-$)=á)5Ü §˚ ƒ-%)1fA…--%bsò9iE…9á1F5f9á-$ÇoV)(9Ü1F1E1f5f „§k5sπ$‰-$-$1E5f1E%Jg61E5f5f1EÉ%-$9hwπ )5f „√£)$ ≈{˙$‰1F%-$)1f9ÜÉwπ1'9áEͲ))-'sòg)%Eͬ5g √£ AfÛRo=®=®5g9á5f5f)&Rpb”$„$„%˛)¬EÀg$‰1F5f))1E)%wπ „1E-$-%5f1EÉEÏsx9ä-$A®1EÇÇ¢)1%5g%-$£Ç5f-%))Ç-$¢bÇ5á9á9á5f9á£-% ‰£-%5f-%1F1F=®5g!$ÂÉEÍ9à%A…5f=© √Ç$‰Ç1E1F$„5f5f1FÉ √ „-E1E5f1E √)ƒ ƒ1$-%5f5g1F1F-E ƒ ƒ)9á9áA…1E5á)b)≈¬EÍ)√-%5f ‰£ √=®-%5f££√$‰££)Ç ¬%A…A…) ƒb1%)¢¢$„9áÇÇ¢5EÇ)-$ „-$É ƒ Â¢9Ü1E9ÜÇb£Ç£1E) „)%5f)££¢1E „ A)1E=ß ‰£ „£)1E)5f)√É%-%1E-$--%5f b$ÂÉ√-$¢¢ „!5ebÉ5f5f1F1F5E-%1EƒÇ5f „-$9á9á$„)É£ „-%¢9á9á √5f ‰£-%1F5g-%-$1F¢ B)c5á5f9á1F5fEÍ1F££ „ ‰)-$%)%ÇÉÇEÈ5f)) „-%-%Çb)$A»Ç1E-%5f¢£Ç)1E1F5f-%))% !-' A¢¬$„W5f-$5f-%%)-%-$¢¢)1E9á1E5f1E1E)-%5f-%1F1F „%9á)9áA…EÍ1F5f1F=®=©=®)&=®=©5fEÍ1FJ $„A…5f=®E…Ç=®1F)1E9á1F1F5f1F=®9á5g1E-%5f5g „A…=®A…5f5g9á$„)$9à-% √%)¢5f1F£J
  6. 5á√J
  7. ¢˝5fZ√)1F5á9á-$)ÇEͬ))% ƒ5f √$„1F9á1E b1E)$5fÇ1F-% √9á9g$„%)1E-$5e ‰)-$)-$1F1e%)1E √))$)b √$„9á5g9f1E1F1E$„ „1E „1E)$‰ „1E √9áA…=à-$1F-%5f1E5g-$-%-$1E%-%=áÇ5f1E9á=ß A9ܲ)1f˛1E9á9á5f1E1E-$5f5f$„˛=®C1F1E1%¢-%9á1F „) „ √1E1F¢J -%%%£5g9á1F5g%-$1F9á-$1F)√=® „-$-% √5f „ „1E1f)Ç5e1E1E¢1E-%¢5f1E))-$1E1f---$1E)1E ƒ1E-%-%-$1E-%5fA…5f-$)%A®-$ √1E9Ü1E-$-$9á1E5f1E1E-%=®=® „=®¢£-$AÍ9à1F5f=©9á=®9á9á5gEÍAÈ$‰-% √9á9à$„=®1E%5f1f-1%5f1E1F-$-%9á1F1EA»1E1f$‰)9á=®J 9á=©9á-%5fA»1F=®5f9àA…-%5f9g9á)-%1f¬)5g9á1E)1E5g1F1F-$√5fA…-$√5f5f¢√1%9á9á)A…1F)$„=®$‰√=á1F5g-$))-$)1E#) √))=»1E-5F9á-%$„1E)=®-$√1E9á-$-$)=®1E9á1E-%)=®9á „1F¢Ç-%A…5f˝1E5f1E))5f=á√ „¢5f5f ¬=®%¢-$˛)R1E)1%$„-%5f5f$„5f1E5f¢)1E9áA…9à1F1E¢5f9á5g9á9á=à=®)5f5f9á „-%5g√)$9à9à9á1F=à=à1f5g9á¬=®A…1E √=®-%%√)5Ü5f)EÍ)-$)A»$‰√5á)5f))-%-$-$$„1E$„5f)A…1E-$1E=à9á)√ „1FA…1E √=®-$)¢ „1E)5f9á5f$„Ç1E-%5f1%¢EÍA…)£)1F9à5g5g=®9à)$9á1f √ „9á=©-%=® „ √ „5f-E5g-%5f-1F1E9g-$1F5f1E5f-%1E9à5f$‰ „Ç-%5g9á5g=®-%-%9àA…1f9á9à9á¢9àJ )IÍ=©=®-$5f1E5g9á-E$„=®-$9á √$‰-%-%1F%¢)9ᣠ√$‰ „-%5f9ß-$$„-$£¢)-%-$$„5f))-$-%-$)$¢)=ß1E¢%$„A®-$$‰9á5f)Ç √-%$„˛1Fv$„£-$-$-%)ÇJ A®) B$‰ ‰9á)1E-%1E „1E%É¢5f1E)$5f „¢ „1E1F-$-%1E-%-$1f1E)1E1E-%1f)9á9á1EÇ£b)1F5á1E9á$„-$5gA…-E9á9á5fÇ=à=®-$E…N,9à1f5g9á9àA…1E1FA 5f=® ‰)1E-%5g-$¢1E=®Ç$„$„))5f5f1E „1%Ç%)-%)%1E))-$-%1E)Ç)9á-$√ „t$„1E-)% √ „A»%1F-$9á1E5f¬-E¬1F)£EÍ „¬)-%$‰5g9á9á5g5f1F5á=®5á1F5f9á5gEÍ5f)$)%N,=® „=á9à9á9á1F5f)=à1f)$1E1E-%-$9á1f9á5g)=®5f=®9á1%-%A…-%1E-%9á1E-%-%1f-$5f-%5f$„%Ç)-$5g-$-$$„-=®√1f1E-$5f$„-%%1E-$ √)5f1E1%)Ç ¬5e ¬1E1E˛)Z$„£5f1EA»9á)1E1E-%-$1f$„)1E-$-%)√$„=ß$„-$1E5f1E) √-$√))¬9á√√))$‰9á9g1E)-%)1E5f1f √-E1E5g5f1E)$ √=®1E¢=®-E9á9á5f1E$„=®1E$„1E)-%%1E$„5f1F-$9á5f1E1E √)%=à5f1E5f9á1F5f˛1F5g9á9g)$‰Ç-%9á=®=®5g1F-%9áÅ=®))1E √˛) 1% √1F1E1E-$1E¢¢1E √5f-%$„)%-$%1E1EA…1%))1E-$1f$„√)1F-$-$|-%-%5f)% ‰EÍ%%)-$9á9á1E5E$„√)=®1F √5f5f „)$ „$‰9á5g=®EÎEÍ1FEÍ-%A…A…1FA 9á-$=®)-$$„=®$„-%-E1E9á)1F-$-%-$ √9à1E1F5g5f=® „=®9á5f1F%EÍ$„1EEÍ9á5f9á5g1f%9á5f√ √-%5g=®)1F5f-%%-%-$5f9á)1E „5fA…5fA…-$5f „1f1E5f1E5f$„√¢$„¢-$-$$„=®-%¢5fÇ√¸1E-$9á5f-$-$1E5f$„$‰A… „$„1E%9á5g5f1E%¬)5g1EÇ1E5f „$„√$‰5á1f5f5f9à-=®%9á1f-$9á9á)EÍ$„ √Ç9á √-%-$1F9á-%1E-E%$‰1E√=®5f1E-E$„9ÜÇA…5f1f-$ ‰A… „1F=®1E1F1E1F5f-$5f9à „5f5á=©1E-%1F9à1f1F1E5f9à9á%9á √9á9à1EA…)) √1E9á1E5f1E)¢√√¢5f-%%9á) √5fÉ √ 1E1%-%)1E)1E)1E)1f-%¬9á=®)1EÇ1E-E-$)) „-$)1E1E-$1E%-%)=®5f5f9á9á5g5g1E=®5fAÍ1FEÍJ
  8. A…1E=àA®1E1F$„5f5f)$‰1E=®)1E1E$„-$-%¬5f=®1E¢$„-%5g1EA…5f%1F-$-$) √9á-1E9à=®9á1FA…-%5g9à$„5á=®-%)-$1f%5FF
  9. 5f-%1E9á5f-%=®Ç) √-$EÍ5á √)1E5f9á) „=ß9á$„AÈ-$Ç)5E5f9á-E%$‰√5á-$|)-$)1E-$¬1$9á)-Ea1E-%1E-%%√1f)-%-$9á5f)-$)5f5f1F9á9á5f1E1E))1f%1E=®9f „-$5g)1E¬5f5f% „1E9á „)5f)1F)%5fA…)Ç$„1E-%-$9á-%¬-$ √-%) „1F)1E5g1F-%%AÍ)9à1F)A…J 9á5f-%9á%5gEÍ9á1F9á=®9á1E=®Ç-%¢1FA…1E¢ „-%5g1F)%E…5f)A…9áÇ1E5f˛1E$„%¬9á-$)˛1E-$¢9á5Ü)1E1F-$-$9á) √)$5f-%-$)5g%5f$„£5f5g9á9á „9áA…=®%5g-%1F5á9à1E=®¢$‰√9à „-%5g1F5gA©5f-%$„1F1E5g1E$„=®1E5f1E$„1F9à-%A…1E5g „9á=®5f=®9àA…=® ‰)=à)-%5f9á)1F-$-%-E% „1E1E$„5f=®1E5g9á1E1E-%-%5g-$$‰-%1F-%=á¢A…9á-$)√=®9á √£$„%$„5f „1$) „)EÈ5á-$)%9áS%)-$1E£-$-%¬-$5f-$¢-$-$-%$„)5f)) „£5f5g9á9á ‰5fA…9á)1E-%-$1E-)-%b¢ √)É$„1E-$1E9á5g-$)-$5g1E-%$„EÍ)1F))5f9á$„A»-5f¢5f-E)1F1F9á=® „5g=®1F1f9à1E$‰1g˛1E4$‰)5gA©-%A…A 1g5f5g-$1f)5f5f1E$„5f1E1E9á√EÍ5g$‰$‰ √A…9á √¢$‰$„%9á$„-$))-%A»9á-$%-$A…-$5F1E9á¢1E5fˇ)) „$„5f=®A…1E5f-%1E9áb9ÜA…5f1EÇ1E1E1f1E)5f-%$‰1EEÍ=®9á5á5g9à5f-%-%1FA…1E1F5gA® „=®=®-$)5f „1E5f „5f „J ))b=®-%1E1F5f$„=®9áEÎ9á=©9á=®¢1F-$5f5f1E9á √9áEÍ1F=®5f9á$„5g-$√A…%9á5f1F5f1%-%)-$1EÇ-$ √¬$‰¢)1E5f-$ √-%=à1E) „1E5f9á√1E-$$„¢-%-Ç9á-$)$5f-%9á √)$„)1EA…A®1E)))5f A=®9á1E$„Ç˝1Es)$5á$„)1EA…9á5f5f5g5f1E)-$-%=®%1E1fA…¢=®9á5f-$5f¬1E-$$„-% √A… „ „£9á$„%1f-$√9á1E5g5g5f5F5á£1F9á=®=©9á9á¢A…EÍ9á=à1F5f)A -E$‰R,)AÍ5f-%-$-%-$-$1E-%Ç1E£$‰) √1E1E1e) √1E5f5f-$ √)1E1E√-%1E-$√-%$‰Ç9á)1F5g1E1E)$„$„-%9á&5f9á9á-$5f5f-$$„=®%1E)%£=®5f „9á-$Ç A=® √=®)$‰1F1F5f5á5g1F9á-%A…1F5f=®=à1f˛-% „ √EÍ9á$‰-%1F5g) „£)-$A…1F1FA…5g)1E)√5f=®√1E9áEÍAÍ$‰=®=®-%1E-%9á9á-%1E1f=®5f$„=®J √ √)Ç£AÍ5á5f√=®1F5f9á%-$1E=®-%-$-%-%-$-$-%1E5F „%=®1E5f£)-% „-$$„9á-%%)$„-$1E5f1F5gA®5f-$-$5f))9á%))$£A»1%%=®-%ÇÇ5f$„=®)√1F1E1F1E9á1F9á)EÍ1F9á5f:5f))-$5f¢$‰EÍ9á „1E-%1E¢ √£$‰ „5f-%=ß5f) „1E „£1E5f√-%1EA…=® „9áA…-%A…1F5g1f5á9á9á5f9à)J F
  10.  √-%5g√%AÍ9á1F$„˛9á%=à)-%5g=®1E1F1f5f1E1E-$-$5f-$$„9á)5fÇ)))-$)5f$‰))¬))1F-5f1F9á1E$„9á ¬%¬)1Eb5f)-%5f%)$„)1f-%9Ü ‰ „$‰ „-$9à9á=®9á-%% „A…1F-%1f1E1E)5f5g1E5g-$1E¢=à=®=®))-$)-%$‰ √-$¢b ¬-%5á5g9à) „)%¢5g5g-%1F=®1E1F5g)%-%1E „-%9á1E$„√ „=®1E5f-%√ √ „9á1E)=®5gA…9á$„1EA…9á-%))$-$) „-%)1Ea5f A1E9ÜÇ √)1E1E$„1%¢-e1F1%1f1% √)9á¢√¢ „5faA®$„-$1E$‰$„$„-$9á5f=®$„) √$„-%=®5f9à5f-%)$„EÈ-%)5f-%1F$„-E-$-$5f))£5f=à9á) ¬1F)1E√√ √ÇÇ¢$‰5á1E9á √%$„%¢9á-%) √-%-$5g9á1E ‰)%=®1F5gA…9á1F$„-%A…9à5g=®-%-E$„A©-%-%˛=®$5f¬-%A…9à-$-%1E1F-$))-$)¢9Üb9á9áb „)5f5f √ „√)-$)-%$„£$‰9Üa „L B5fA…)5f1%5f √$‰=®¢1E1F=®1EÇ5f-%9áEÍ1F)=®5g√)-%9àA…)5f$„-%b √5f1E9á1F5f5g1F1E5F$‰9á1F¢9á5f=®1E5g-%9á9á-E1E5g)b)9à=®J A…9á1F9á5g5f-%%1F5f1F9á˛)81E√)ÇEÈ))-$-%)9á-%=®9f√-$1f1E-%)=®A…Ç¢=á5f1E-$$„%9á=®-$5f$‰Ç)¢5f5f9á-$√1E=®-$5f)5g „9à=®1EA5f=®)˛1E√$„9áÇ1E1E=®-%£1E1F=®EÍ1F1EEÈ9á¢-$)=®AÍ1E1E)1EÇ$„5g1E=®-%1F9g1E1E-%√9á5f „5f5f9á=®1F$„)-%-$9á-$%b-%1E9àJ EÍ5f-%9g=®1F-% √5f5g=®=®-%)5á1E „-%%RM9á-%5g5f)$9á5fEÍ9á√)1E5f1F-%9àE…a √5f1E)5f √-$=®A®)5f√ „%$„5f5f1F)$¬9á5f-$5f-$-$ „9á5g)B5fA®%¬5f-%1F-%-$1E-$-$5f)$„¬-E$„)-$)A9ÜE…$„$‰1E-%9á-%$„$„5f)5f1E5f5f-%¢)%1f1E-$)$5f-$$„5f1E)$1E5f1Eb$‰A…-%£EÍ1F=®=©J
  11. -%¢=®$„=à=® „ „)$=®9á) „-%1F1E1E%J 5f9á9á=ߢ-%$„9á1f-$=®9á) „1E-%-$¢-%1E1E5f=á)¢1E1E$„-$1F-$-%aA»A…-$%5f1F1E$„$„-%-$-%-%1E1E-$1%Ç1%=ߢ-$-%1E1E$„%$„-%=á%$„ √1E) √-E) b5fA…%1F1E1E5f-%$„$„-E)1F9á9á5g-E √1%9à-%5f-$5g$‰)1f=®1E-$5f5f A)9á √a9á$„9á5fJ  √£1F$„9à9á¢%1FA…9á-%)5g5á=®9á-EJ =à9à=©A…)5á1E=©1F%9á9á)$„5f$„1E¢5F5f5f=®A…1E √-%-E¬5f1E5g-%Ç=à9á%-$-%1F1f%$„1E)1E)5f-$1E-$Ç)$5f¢5f)-$=®√=®1E-%)5g1E9á)-$$„)=®=®$„1E1f √˛5g1E9á=®-%=®1E1FA©$„=®9á9á-%J
  12. 5f)$‰)5á1E5f1E√9á9á1E-$1F=®1E ‰-%9à1E5g=®=®=©EÍ9à$‰=®=®9á9à9à5f5fA… √EÍ5f-$-%=®5f „)5f5fJ )5g-%-%EÍ) „1F √1F1f1F5g1E1E „Ç9á5f£J
  13. A®¢=®=®$„1E£5fÇ)√-%1E1E5f1Eb1E1F)=®9á)9á1f1E%£A…5f√5f1E)-$5f1F5f-%$‰ √A…5g%-%K=® √5á5f=®1F9à9á-%9à1E5fA… „=®9á=®-%EÍ5f))-%9á1E5f1EÇ5g5f5f))=á1F ƒ)%-%1E-$=à1E1E=®9á¬=®9á=©9á=®1F=®EÍ „EÍ5g1F5g=®9à%=©EÍA…EÍ)=®9à1fN,$‰$‰-%$‰5f˛9á(1E9á$‰ √5á5f£RMIͬ=á9á%1F¬9á¢-$Ç-%5f1E1E1Fb5f-%-$A…1F-$5f5f=®%√=®-% √9á))$„)-% √5á-%)1F=®1F-$$„b9à9àÇ5f-$ √9á9à1E-$-$RL)-%=®)A…1E$„ „Ç$„1E9á$„)9á-$)1f$„9á=®)%-%1E1FA… √1F¬5g)=®) „A…$„1E √5g-$E 5g√%) √-$$„1F „1FÇ-%bÇ9á¢1E√$„-$9á)$¬-%$„1F-%5g1F5g9á)¢)-%£-$$„Ç)=®-%)5f1E$„$„£¢b$„-$)¢√ b¢=® „)$-%)) √-%1E ¬)-$)5f-$)1E5f1E%)a9á5f%AÈ1E √5f9á5á-$-%N,)$1FEÍ)EÈ-$ „ √Ç)1F1E „-FA…-$-E5f√1F5f) ‰√$„1EA…¢-%Ç5f$„5fÇ£9á%)√1F1F=®1E¢1E-%)-$1E9á)1f√=® „¢9á¢9á%-E-%EÍ)$%1E1E1f9á5á9á=®A…-$√$„9á¬9á)Ç)9á)1E5f1F √$‰Ç „ A$‰%)¢¢ A%5f√$„1F-$1E¢-%)√-%1E1E1F5f √5f9áÇ √b=®A…9á)$‰-$1E)5f1E%$„9á9á√)A…$„ „b%˛1E1F-%5g5f-$-$%-$-%)1F√1F)-%1F5g1E=®5f1F5g-$%-%9à1F5f1f1F5f-%)=®1f5g=®1E1f=®£5f5g=®5g)5f-$£-$$„-%$‰¢5f9á=á1F1f1f-%-%1F1E5g9á1E5g1F1F5f$„-%£ √1E-%1E%A…9á „-%1F)EÈ=®1f9á9á√$„-$1E1F5f1E$„%1F1f-$5f¢9á5f£¢Ç=áA»9á)$ √-%5f5f5g1E √ „=®=®√)A %$„k£$‰5g-%5f5f9á5g1f)-%$„5f1E1F5f√-%-$-%))-$1E1E)-$ „$„)9á)1F1E1F-$))=®)$9àA…9á9®EÍ¢IÍ9àA…5g5gA©=…$„5f-%9g% „=®A…9á9á5g9á1f1F1E9á9à=®-E5f-%5f1E-%5f√$„1E1E5f ¬E…1E √1E1E$„EÈA»1E1E9á √%¬-$)1F-$ √%1E1F-E-$9á5F1E5f-$b-%1E1E „Ç$„)-% „9à-%-%EÍ5g%EͲ-$)$„$„)A…¢1f9á=®1F)5f1E5f)$„9á-$1F-%1F-%1E-%˛1E¢EÍ9à=®9à=®5g1F9á1FA…9á9á9à)%9à$„5f√-5f „$„ aA®=®1f¢-%9á-%-$1F5f)Ç5F9á9á1E1F$„1E-$1F)-%1F1E ‚5f1F5f)1E)-E5f5f¢9á1EA®¢1$Ç-%1%5f)%=®1E)=®9á1E) √=®9á1E1E-$ √!-%-%5f „¢$„)1F)$9á9á5áJ 5f-$J 1E-$9á)-%$„1fN+ „9áA©=®5f √=à1F9á%%A…1F-%5f-%)1E1E˛)(¢=á9á1E1F1E5f)9à)5g5f9á5f%$‰5g$‰=® „5g9á-%1E „A A 5g-%9àJ 5f5g9á9à1E √5f9á5f5f˛1F)$5g5g5f=à1E$„˛1E5F1E1E-%9á1F √5f1F5e √1E¢$„1F1E$‰ √=®5f-$-$1E%$„√A»1F1E-$-%61E-%5f-$9à5f-%5f √5fA…%1F9á√-$ „-%=®9á5g5fA…A…)¢-$1E$„A…))1E$„5f5f-%-$1E „=à-%1E1E)1F9á-%$„-%5f5f-%-$5f˛9à1F=®EÍ5g%EÍ5á5áA… „√$„ √5f √ √9á-%£1E-%5f-$¢%-%1E=à=à1E)1E5g1E1E5f-%EÍ9á-%5f$„)5gN+Ç5f1E-%9á1E)$1F5f „ „9á5g9á1E)Ç „1E5f)$„)-%-%1E1EEÍ√√)-%1E-%1E-% „5á ¬5fA»)5g5g$‰1F √5g=®A…9á=®EÍJ $‰$‰5f5á-%EÍ-%1F-E-%9á1F)1F9á$‰5f)1E5f%1f1E-%%)1E1E)#$„)1f5f5f „1EJ 5g „=®5g9áA…% √)%=®%%A…5á)5g-%=®1F$‰)1F1FA…=®5g-$˛1F,-$5f-$J 1%5g5g1F-%=®F
  14. £A®1E1F=à-%5f1F1f¬)5f9á=®1E)£¢1F1E%¢ „-$$‰$„5f9ᣬ-$-$5f-$-$1E5f)$$„1%)5fA»Ç¬9á ¬¢-%)-%)Ç5f1E-E1E=®EÍA…$‰-% √9á)9á=®5f¢5f1E)$„$‰5f)-%-$))=©-$A»A…1E¢EÍA…1F5g1f „=®A…9á=®1E$„1F1E)$EÍ=»5f¬A…9à5f$„1E) „1E5á √=®$„-%=®-%-%1F5f1E%-%-%9á5f5f-$5áN  ‰b$„5f=® ¬1E-$5f)1E1F5f)9á-%)9áA…)5f-$)1F1F1E1f)$„%$„Å1E)1E-%1E-%)) √-$=®Ç √1f√¬5g-%5g% √9à5g1E5g=®A…EÍ1E=®%5g)9àA…5f ƒ1E)1E$„-%1E))1E5f)5f$„A…9á-%ÅEÍ9á-%)1E √-%1f5f9à-$)9á)5fN,A…5f$„EÍJ 5f)9à1f)1f5á)=®-%1F9á)1E5f5f1E-%=®=®9àA…5g-%9áRL-%$‰)5á=®-$-$5f5f)$-$9á-$√1E-$%9áA»1E5f) ¬1E-%1E$„-%%)$„¢-5f-$-$1F)5f „-EA® √5f)√9á-$1E)EÈ1f5g)$9á-%=®5f5g1E5g5f5á9á1E1F-%ÇEÍ-$9á=®1F=®5g5f1F$„)-$-%A…)$ „5á5g5f1F=®A… „-%A…J 5g1f£9®)=®9à1F9à9á£%A…5g-%¬$‰1E9á-$1E1E9g=à)9á9á-$√-$5g)5f9á9á$„b-%1F) „Ç£5f=à$„ „)EÍ¢1EEÈEÍ5f5f1F √9á „))$ ‰1E-%5g-%-$5f1f-$-%9á=®-%)9á1f5f „)A…)A…$„£5g5f-%-%A…9á9á1E=®5gA…=®1F5g=®˛5g.)9á-%√A…-E9á=®9áJ
  15. 1F1E-%%)5f)F
  16. 5f-$1E9á-$-$5g9á¢)=®=®1E5fÇ5f%9à5á9á9á5fÇ1FJ
  17. A…5f%1f˛9á<5g5á9áJ )=®A»-% √9á5g5g9á=©9à-%£9á9à9á √ „£E…=…-%¬)J £9áEÍ9á1E1f5fÇ1E √$„¬$‰)1E)1%-$9á1F))5fA®)-%9á1E1F¢-%9á¬9á-%-%)5g)$‰-$$„-$%A…=®-E=®a5g5f1E=©%Ç=®Ç9á9á-$1f¢)% ƒ¢ „)-%5g5á-$1E5fÇ)9á=®¢Ç)$‰¢-%1F1E5g$‰A…J J )$9à1f9á1F5g))9á%a$‰1f1E-$-E)5f-$¢√1E5f-$-%)-$)1E1E-$1E1EA…5f¢¢-$A®1EÇA»9á1F-%)-%=® A „-F9à-%5f-¢ÇA» √-$-$-)9á „9á9á-%5f1E7-$N  ¬5f)√9á √$„5f9á-$$„)-$-%)A…=®5g=®Ç=®A…1FA…)$‰A…¢9á9à)=® √1F√ „%-%9á=®5f-%1E9áÇ)$5fEÍ „£-% √b%˛)R√5f=®EÍ-%1F5f1E5g5f-%$„9á$‰Ç)A©1E1F5á1F=©=®%-%9á=®1f5f)1F5f5g1f5g1F5g=®-F$„)5f=®)£9á5g1F1F%-&1F A$„-&9á-$1E5f£Ç1E£1E)$ „)5f „1F1E1E5g))A»¢1E%¬=®$„ „5f5f9áÇ)5fEÈ5g)$1E=®¢£1F=®)˛9á1F)) „5f√%=®EÍ9á1E √=®)$£√ √ „-$% „A…1E-E$„9á1E£)EÍA…%$‰-%1F-%9á=à)9áA…9á5fA…)1E9áA…)5g))1f1E1f$„-%1F5fb1E5f$„1E-$))5f-%1E)1E-$A®=®-% „¬9áA…$„-%-%$‰1E1E9áA»)Ç%9á-% √A…1EbA…9á5g)A…=à¢9á$„1F-%)1E-%1E √)$1E=à-%Ç$„9á=®=®)$1F9á£Ç5gz9à%9à=©=®5g)$5f)A… √-F=®J 9á5f ‰AÈ1E%$„-$1F9á$‰-&N+5f$„ √5f1E √-%=®9á √-$%) √-%5f$„1F=®1F1E9á)9àEÍ=®)$=©=®5f5f1E9á$„=®9á=®bA®5f1E5f9á1E1f5f5f1F1E1E1F9à5g5f-%¬=®=®$„1E1F)9á)-%5f%b)1F-$$„J,)%b=®=à5f)AÈ5gÇ5f „9á1F))-%$„ √)-$=à1EÇÇ-$EÈA… A)5fEÍ%1EJ 1E))5f9®%%$„5f5g5f1f1F5f √5f%=®5f)$-%%5f1E1F1%$„£9f$„-%5F)1f5g9à=®=®-%9á5f √9áA…1F5áAÍ5g1f5á9á)5f)$ „Ç5f√-%1E5f-%%=®-$1E5f) √√1E1E-%1E)$„9á1E-%-%1F1E1FA…1f-$√$„1F%5f=®=®1f5g)A…=®√%EÈ-$$„1E)1E1E)$‰¢-%%5f)%)¢√))-$Ç √1%A»9á! √5fEÍ)1FJ 1F5f-%9á5g)%%-%9á9à5g=©9®9à-%=®%A…1E-%1E1F5f1E5g9á-%$„5g1F5f-%%5f)$1E9á9á)5f5f¢-$A®)-%=®-%-$9á1f$‰=á5á$‰ „9á-%5g9á9á5f)EÍ1F9á9à)-%$‰5f5g1f5g)$1FA…5g1f9á9à9á1FA…5g1F%1F=® √1F5áF
  18. 5f)$√=®9áÇ$„=á))-%$„-$-$)¢£))1E√ √-$b ‰ √9á1%¢Ç)$A…9á-%)√)$=á √£% √5f9áA…5g%5f9á%9á=®)=®)9à9á=®5g5f£9áEͲ9á5f1F1%9á5f$‰ √%b5f)) √)$‰1F √J =®EÍ √)%)Ç=®9á9à9á5g=®5f1E-%9á1E5f)5f1E1E „$‰9g-%5f5f$„¢9áA…1E1E$„Ç=ßJ 5f)-$9á$„$‰=®-%5f$„1F)9à=®$„1F9á√-%1f5f1EJ -%-$9á$„%1E-%5f-%)-EÇ1F9á5g5f5f√)9á-$)-%Ç-%9áÉÇ-%%9á=®N,9à1F9á=©)%=©=®1E9®-%=®=©9àA…=à$‰l5gA…-E=®=®9á-E1F5g9à%)$1F¢1f))-$¢ ‰) „EÍA…9à¢$„$‰ÇA…9á5f)-%5f=®1E1F-%1f5á5f5g9à5f-$%A…-$=à-E) „J A…5g5f5f¬J J 9á1F9à9á))$EÍ-%9à1E=®√5g1F)1F5f b5f1F5f)=®-$5g-$$‰√1E$„)$‰)-$¢%9á1%9Ü-%$‰1EJ -%$„£) )-%)$„5f1E)%$„Ç „9á=®˛5g1F-%=®9á-%5fÇ-$$„-%)√$„√=®1EÇ-%5Ü¢1F-$¢5f)$ „$„1E1F1E √-%5f5f-E9à1FEÍJ )5g9à-$5f√1F9á)-%9à5f%)=®)1F1E)$„9á5f1F1F1E9á-%$„J 5f1F)$‰ √1F=»-%5f1f „%)=®9á)1E¢%5f1F1F5f5fÇ1Ea5g9á5f1E-$)%5gEÍ9á5f)-%1E5f9gA…=®¢$„5f A%)-$ √9à5f-%1E5f¢)}5gEÍ5g=®=®9à5gEÍ5g5g=®£-E$„-%)¢-%¢=®) √9áA… √-%1E √5f5g-$%1E5f5f¢-$1E √-E=®5f5g=© √=®=®1E5f√)%5g)1f=®5f-$1EA©9á1E9á)9áA…A…1F1E)=®-%)A…9à5f5g) √5gEÍ1F=®1f-%)$)$5g9à)9á¬-$9á9á%5f)$Ç-$b)5f9á-%-$1E)9gEÍ5f1E)-%--$5f=®1EÇ)=áÇ)-%)ÇZ √1E5f%-%1F9á9á1E-%£$„1F$„=à)$ „1E5f5f=à1E1E)$5g „- „1E „%bA»-$)1E£))-$1E-$1E1E9á5f-%%-%=®%%-%-%5fA…5f=®5f5g-E√)-$-E5f5g)1F5f)%1f1E√Ç)-$%1E$„Ç1E%%E…5f¢-E1EA…˛-%99á5fA…$„5f9á9á1F1E5f1E1F1F-%1EA…-%¢£5f9á5f √A®-%$„5fA…1E „1E „Ç£EÍ5f „√)¢1E1E)1E9á=®=®5f1f√-$1f)9á1F-%9à9á˛=®5f-%1F √$„)=®1E „£=à1f5f=®√1%))-$1F-$˛5fZ)- ‰)¢))-% „=©-%9à1F=®1E „1F5g1FA…=®-$=®=®5f-E5g1f-% „1f5á-%5f$„ √5f √)J -%)1F1fEÍ5f-%1f=®1F9® √1F5g9á=à1E5g1E1E)1E1EA…-%££9á1F1E „A…))1E9á √$„%√b√5f-$Ç$‰)£1E9á √I5f1E1E-%%)5f1F-%A…A»9à9á9à)-%¢1E¬¢)A…A…=®$„A…EÍ9á=®) „5g1Fƒ=®5f$„-$=®5g1E9á1E1F5g1f5g%¢A…5á)9á5g „=®-$9á1F9á=®1E1f-%1E5f5f ‰£5f9áA…-E5g˛1E)$ √ ‰=á-%%-$√ „1E5f-$$‰¢9á1E))√%1E5f5g5f9áEÍ-E1E1F$„-$%)1F1E5g1F=®-%)-%Ç5f1E1f5f1E)9á1E£$„-%9áA…-$1%-%-%1E) „1F1F5fA…EÍ9áA…=©-$-% √5f$‰√1FJ EÍ9á „A…J 5áA…1F)9à9à$‰EÍ=®-%5fEÍ1F9á9à1E-%5g)1F √√1E1f-%A…1f£5f)5f1F5áAÍ)9á9á5g5g=® „$‰=®E =®@1F-%1E9á5g9g%-%EÍ5f1F1E√-$5g9á5g$„£=®1f%1F „-%-%5á1f5f5fA…)-% „¢) √$‰5f-$5g1E9á)%-$Ç1E-$1E1E)$‰5f1E¢)-$1F9á-$-$1E9á5fP1E1E5g-%-$5g5g¢=®-%=®-$5fA…5á1E5f9á-%9á5f √-E)-%1E9à$‰5g-%5gA… „√ „) „9Ü¢$„9á5f1F-%1E=®=®-%J %-%-%£A…5á ƒ9à1E9á9á1E1E9à)1E1F5f9᠉ǣ-E)1FA…1E5f)A®)$‰˛1E5g1E¬=áJ
  19. =®9á1f5f-$EÍ1E-%9à)1F-%ÇA…˛=®5g-$1f5f5f%-%)-%J 1fÇ „=®5f$„=á-$1F1F9á „$‰1E-$$‰1F-$5f5á1F)9á1F ‰A…=©9à$„5áJ 9á9á9àA…1F=®1F$„1E5f-%9á9á1F5g1E1fN,$‰))1f%A… ¬-%=®5f1E-$)9à9á1EEÍ%1%)% „EÍ1%%5f5g1F5f-%1F5f9á5g5g5f=© ‰¢√1F1E1E5g5f1E5gA…9á1F=®9àA…1F9á$„EÍEÍA A…9à1F-$EÍ=®5fA -5g%#Ç9à5f5f9á%)-$1E1E „)5f)A…$‰Ç√5f))=á1F-$-$5f$„$‰=ß)%-$)-=®1E)-%)A…-$-%9á1E-$1EÇ5f1F=®5g1f1F-%5f£¢1F1F5f)£¢-%-%¢-$1f-%5f1E√)1E)-%5f √1F9áÅ9á-%9á1E=©=®9à1E£-%5f-%-$)EÈ1F1E-%1F1F-$-%5f1f5f))-$ „ „)5f-%a-%1f1F-$1E1F5f1Eb%9á5f=®1F=®-%EÍ)EÍEÍ1FA =®9á$‰¢=®-$5fA…9á1F5á¢)5f=®5f=®%5gEÍ)Ç9á9á)E…5fF) B%)$„1E1%)A®1f9áA…1E=®A…$„1F5fA…=®5fEÍ5f=®$‰√1E1E1F-%¢£-E1FÇ-%5g1f9á1F$„1F-%-%-$9g¬1F1EÇ5f)$5f1F9á=®-%-$¬1E1F1E-%-%=…5á--$9à9á1f˝5gB5f1F=à$„))5g)$Ç5á9à5g=®5á5g5g1fa)%9áA…A…5g9á1FAÍ)EÍ=®)EÍ5f5f¢£9á))=®5f5f-%)1E=à5f5fA®$„5fA…$„Ç9á=®%A…-%)b1%)-$ √%%=®1E √))9á=®1E „=®5á$‰%5á-%9®1F1E5f9á5F)5g9à=®5g5f9á9á9à9f √)1E-%5f1E=á-%%$„ „A…1f5f)$)1FJ =®5f=®9áEÍA…=…1F=®5f √5f5f)1E1F1F5f-%1%ÇA…E…$„=á1E%5f=®9g5f1F5f1F5f1%5g9á9á1E£5g9á5f9áA…-% ‰-E)H È-G=ßN
  20. =Ü1D-$1EÅ1EJ
  21. 9Ö%(ÎÍË-H1h Â%√1DA»=ß ‚ Ê≈%)H-H§1i)H»á®á®à©á®» ……©…Ë®®…®®®…®»)'=¶A AÍ=®9á¢1F5f1E-%5e%) Í    %-H%)' Â!$‚A»5f5g5f1E9ÜA…9à1E9á=®¢AÍA©-%1F9á9á5á9á9á ¬J J 1FJ 9à)A…9á=©5f9á5f5f5g9á9áA…9à5f¢9à=à9á5gEÍ-$ ‰-%=®=® √)$=®=®9á)-%-$Ç1FEÈ1E-%¢EÍÇ1F5f$‰-$b-$A…9á ‰¬√ √5f1F√A»=®1%)√-%-$¬=á5f$„ ¬√J -%1%$„A…-%Ç)-E)$„=®5f1F1E-%1F1F5f5g)5g9á9à5f1E5f1F¬)Ç=á$„=® √ÇJ
  22. N,=®) √5f$„A…9á-%-%)5fA…1F5f$„√5g5á)1F5f1E)9á √$„$„%A®-%) „Å9á5f5f1E5f1E5f$„9á-$9à5f%¬Ç% √1F)=ÖÏÀÎ Ã…ÍÃÎ!
  23.     È»!*ÍÏÎÎÀÏ ÀÏ À ÃÍÈÈÙ À™ââ ©à à h àg à h àh à à ™© ©à âh à h àg àà àà ®àà®)&=©A…9á5h5à9à-& „!*ÏÎΠÀ     ™À ÏÈ!=©5à    %5g1F-$5f-$$‚J    1E-%9á=®1E9áEÍ)$„)$„N,1F-%1E$„A 9à5f1F1F5g9á5f9á1f=®5g$„)√)¢9á$„9à)$1E1f √a)$1E%-$9á)%Ç-$-$-%√)1EÇ √%1F1E „¬-%1E9Ü¢%1%=®)a5e5f ¬=á5f „    |A® √1Eb5f)√)-$)A…=à5f „=®)$5gA…1F5g1E1E-%1F-$1F5f-$1E1E-%)-$5g5g)5f-%1f%5g)£)9à5f=®1f-E)9á5g9á1F1F1EJ 9à ‰)-%=®1E5f9á1F1f¢=®1E √1EA…A…))-$¬-$-%1E1E5f5f-$1F √9á5g9á5á5f9à9á-%9à)!ÎÀÎÎÎÀÏÎÏÎÏÎÏÎÏÎÎÀÎÀΠΠ      ¸ © â h˛ à h˝ à   © © à â à à h˚ às ©® © ® ®® ©©  ÎÎÏÎ ÎÎ Í    Î ÎÍ!,  Î  %L!,!,! !+! !, !+â-G9á1f1E)A…1E¬1FEÍEÍ$„5g5g-$1F5g5f-E9áA…=©9á$„EÍ9á9à5f=©9á=®-%5á$„9áAÍ5f1F9á1E5F¢5f√-%))1E1E-%-%-E1f1E1f-%5f √9Ü¢5f5f-%b¢1E9á1e$‰=®1f¢)b-$)=®-%Ç1E=à-%1f$„=àEÍ)IÍ1F1EÇ-%-%A… „=®=à$„A…A…1E1F √5f5g=®1E5f1F1F5f5g „-%A…9á1f1F$„5á5f9à-E-%1f5g5g-$$„5g9á9á1F)b)-$1E√A…A…5fÅ1E5f£)9á=®)-$)$-$-%-%5g-%1f „9à1E%5g9á=®5fA…9á5f „$„ÊÀÎÀÎÀÎÀÎÀÎÀÎÀÎÀÀ À À    ™   ©  © ©â ©à à h àg à h àh àà ©â ©à âh à h àg à h àà àà ®à ® ®© ©  ÎÍÎÎÎÎΠ  ©   ™ Í Î!+!+%L%+%L%+%L%+%L!  Í    ©©-%√=®=®-E£1E5g¢)%9á=à)1f1F5g9á=®9á5g5g-%A…1F1F9à1F=®9áJ =®=®$‰-%¢ „5f1E1E5á-$¢9ÜJ 1E-$A…5f5f$„A…1E1EA»1E-%5f%£9á-$-$‰A…-$-$5f1E √-$$„%5f)$    1% √AÈ$‰-%)-%1E√1F¬1F)a1E-%9á))=®=à$„$„ √1F1E9á5g √)9á1fEÍ1E1F-%-A…9á=®=®)9àA…5gEÍ9á1F5g)˛1FL-%-$$„=®)1E=à)-%9á5f$‰¢-%)9á%A»)£ ¬=®9á)1E=à5á-$1E1E1F1F¬9á¬9à5f9à5f))A…-%£-hÎÀÎÀÏÎÎÀÏÎÎÀÎÀΠΠÀ  À     ™   © © â © â â h˛ à h˝ à ™ © © à â˙ à © à àà ® ® © ®……ÍÍ ÍÎÍ ÎΠβ _ΠΠ!+! %,%+)L)L)l%K%L%+%+!+ 
  24. Í……®A» √ „)$1F9á-%A…1F „%9à9á)5g9àEÍ5g=®5f5g1E)=®$‰5g5f5g9à-%-%J 5á$„J 9á1f-$1E)-$$‰£¢=®Ç9à=à%)$„Ç1F-$$„$„1E1E¢1F1F)-%9á1F)5f1E √1E „ √1f5f)%1E£9á=à=®)$1f$‰A®-%-%=®Ç=®5g-%)¢9á=®9á) „J
  25. 9á=®-$Ç-E£ √1E5f1f √£)A…5g-%$‰=®A…1F1F=®1f5g)EÍ5f „)A…5f)$1FIÍ=®$‰Ç √=®9á1E£-$-% ¬=®¢5á5f√)EÍ1E-%9g5f-%5f9á$„1F5g-%1f9á1f √9á-%=áÇe ÎÀÎÀÎÀΠÎÀΠÀ À      ©  ©  © ©â ©à à h àg à h àh àà ©à ©à âà àà àà àà àà àà à® © ®…© Í 
  26.  ÍÎÎΠ͠͠͠ÍÍ 
  27. !  %+!+)K)K%K%+%K!*!+
  28. 
  29. …… ®«1EJ,5g=® „=®)-%IÍ)=®9à)5fEÍ5f1E9à5f5g)1E „1f9á)1E9à5g)9á1FEÍ£√=®-$9á=®% „EÍ¢1f)$-%¢1E)-%)$„$„=®9á)-$-%5f1F „)$$„-$1E¢1E√=á=á)$‰)$‰}5f¢1E$„)9á1E$‰5á √5f))-%1E=®1F5f1f$„5F1E=®9á√Ç1F-$-%9à √9á-%1E1f1E1E=®A 1F9á=®£)1F1f9à5f=®5á=®=®9á1F-%$‰ „)5Ü √√J+1FÇ5f9á-$A…$‰5f)-E9á √√1F%)$1E-9á=®-$=®5á „-E9á9à=®=®-$5f1%1F9á1CÀÎÀÎÀÎÀÎÀÎÀΠΠ À  À        ©   © © à © â˜ à˛ © à ©˛ à} â à â à â à àà ®® © ®……ÍÍ!+ !+  ÎÎÍÎÍΠΠΠÎÍ  +! !+%K)L%K)K%+%K%*!*ÈÈ……Δ √5g=®1%EÍ$„9á-%9á9à ‰)=®-%5f5f1f=®A…5f=®1F1F1EA®9áA…9à-%=©9á5g=®-%-$9á1E √9á-E5f5f$‰√9à5f=®)1fA…5f-$5g-%1E-%5f£1E9á1F-E=®-$√£%)£1F=…¢-% √o)$„-%A®Ç)-$£))%9à))¢9á9á1E5f1E)-%)5g)$‰5f))5f=®9á5g9á9á=à¢1F5f1f)$1F=®)-%5g)√9á=®5g=®1E9á%)-$ √$„5f „Ç1E1E „1F)1E5f=à1F%5f-$Ç-&% √¢-$$„)9à9à))$‰-$9á1F=®)-$1E¬5f° ÌÀΠÎÀΠÀ Î      ˝  7© ™©  â ©à ©à à h àg à h àh àà ©à âà àà àà àà âà àh àà àà ® ®……ÍÍ 
  30. !+ +  ÍΠ͠Ͳ ^Í ÍÍ Í 
  31. %K%*%K%*%K!*%*    È»…»!1E-%-%)-E1FA…=©-%=®1% √1F) √)9á1F-%EÍ9à-%9á5g)=®5f=®√1E9á)%5f-%%)$„£¬£$„A…9á¢%1E1E-$)5f5f¢Å%5f „-$1E „1%1EÇ)%)5f „-$1E%-$)-%1Fz=®¬%5fEÍb)9á5f-%5f-%=®1E „5f1E-$9á1E√=®9á1f1E)A»9áÇÇ%-$1F1FA…9á9á-%)1f9à=®1F=®9á1E9á%$‰-%-E „-%9á5g-E1f1E5g1F%=®-%$„-%1F9á1E-%1F=® ‰)9á)Ç5fN 5f$„1E√))J
  32. 1E$‰%))$=®5f1E$‰A-!ÀÎÀÎÀÎÀÎÀΠÀ       ™   ©   ©   © © à ©ˆ à © â © à â à â à © à © à â˝ àvà © © …ÍÍ  !+!+!,  Î  Í Î Í Î Í ÎÍ 
  33. !+%K)K%*%K%*!*!    !
  34. ÈÈ»ÈΔ)$9á1E5á9á1F9áIÍ%)%J 1F$‰9áJ 5f-%5f√$‰-%EÍ5g-%%$„1F9á-%)-FÇ1F)1E=®-%-$-%£=®-$-F-9à1E)√5f=® „5f1E-$) „£5f)$ bÇ-$-%5f)%)%)1f=®$„-E1E ¬1f$„-%1EN ¬$‰ „1F%1E5f5f-$¢-$1E1F)˛5fR1f9á¢)A…-%1E=®=® ¬9àEÍ5g-%1E1fN,9à9áEÍ=®-%√%9á √)$„-%1f=®5g1E9á5f5á1E%9á5á5f% „-$ „ a$‰¢5f1E9á ¬1E-%EÍ=®)1E=®5f9á¢-$9á9®1E1E-%)=®%-$¬»Î À Î À À˝  9©  ©  © ©© ©à ©à âà à h àh à h àh àà ©à â à àà àà ©à ©à àh à h àà à ©……ÍÍÎÍ ! %K!+!+  ÍÍ˚  ©  Í ÍÍ 
  35. ˛%*S!
  36. !*        ÈÈËÈ»©1E1f)5f¢b)$¬5g5f5g)$A…5fA…9à-$=®A…A…5g¢-$5á9á5g-%1E-$=®)9à)$‰5á5f9à=à5f¬$„)a=®1E)$-$5f)-$$„$„-%)-$=®9á1EA…)$ ¬=áN,=á1E5f£5fA»=®Ç5f-%)˝p=®9áÇ¢-$=®1E¬9à$‰¢√5f1F1%9á-$=®1F$„9á¢$‰=®=®)-%5f=®Ç-F-E-%%)$9à=©%1F9á-%)1F5f=©EÍ)%)1E-$=®¢EÍ=®)-%-$-$9g=®1E¢9á=®=®-%)%5f=®%5f)1f=®-E A)A…EÍ5f ‰9á-%A…9à9á9á1E=®=®5f¬5g1f))ÎÀΠΠΠÀ    ™   ™  ©  ˝ © â © à ©ˆ à © â â à â à © à˛ © à ©¸ à ©…Í
  37. 
  38. Í Í  !+!+%K!  
  39.  Íβ aÍ Í Í ÍÍ 
  40. !*!*%*!
  41. !*    !    È    ÈÈÈ…»ËA»)1E=®5f$„9®)1EA…1FÇ1EEÍ5á=® ‰9à1fEÍ5f=®5f1F5fA…5f „9á9®5f1F$„-%1E£1E9áE…£9á1E)%J -%$„9á-$5f-%))√Ç))9áA…££5f=á1E1E-E¢£ √9á5f£$„a5f-$$‰%5f˝)5f-E-$9á$„)-%5f9g√$„%¢)9á-$Ç£9f9á)5g1E5á9á9à5fA…=®5f$‰9á)$)5f1f9à5f1f=®-%£¬EÈ1E)1F)1E5á-$√9áA…9á-$9áA…5f9à1E-%)=®1F1E √√-%=©-%√Ç5fJ -%-$A©=®A 9á1E „$„a¢ ÀÀ Î           ©  ©  © ©© ©© ©à ®à àà àh àg àh àg àà ©à àà àà ©à ©à ©à ©à àà ® ® ……
  42. !
  43. %K!  Í Í 
  44. ˛!+i
  45.  ÍÍ   Í… …Í… …ÍÈ
  46.     !
  47. È    È    Ë    ÈÈËÈ»…®%))EÍA…9à9á9á1E1E1f9á5f$„ √-%=®1Fa√9áJ -%1FA…A…EÍ=»1F$„-$ „-$9á9á1E5f-$1E5g))%1E √)5f=á-%)-%1F5f1f-$1E$„√5F)1E¢ÇÇ-%5f9á-$-%£Å9á1%5fv1E=®)$)%9á5g √£-$ √-%5f1E5g „-%A…5f5f-$=®%¢)5f5gÇ5f)=®9á5g9á9à5f „-%5gA…)5á=à¢A…-%1F=á)=®A…-%É9á5f-%A…1E1f5g%-$5f¢1E$‰$‰A»1E1F5f-E£EÈEÍ-%-%=®5f1E9á9á%)1F1F √9á)$1F5f5f1E √%Ï  Î           …   ©  ©   © ©à © à ® à ©ˆ à © à ©à © à ©à˛ ©® ©® ®à ©…ÍÍ! !+)K%K%K˛Ío Í 
  48. !+! ! 
  49.  ÍÍ Í…  ©Í Í…Í…ÍÈ
  50. ÈÈÈÈÈ    È    ÈÈÈÈÈÈ…)-%EÍ5f5á=®9á%A…9à5á-%J 5f-EA…=®√-%1F5á√9á-%-%-EA…1%)=®£1%5F¢Ç1F-%1E1F1E1F$„$‰5f „$„%$„=à-$9á5f-%)1E$„1F-%1E5f „5f5g1f5f-$1E9á1E5f „-$a1E9áA…$„-%5f¬-$EÍ1E-E)1%-%)£-$¢-%5f¢N+$„-$9á1E=á5fEÍ5f-E9á1E9á5á1F=®=…$‰1F-%£5f5f%5f1E)5F-%1EIÍ √9á$„-%)1f1E5f √9á)-%5f9á√)1E1F √1F-% A5f5g1E)-%1F)1F=®-E$‰=à$‰-%¢%)$ √Ç5f¬5d   ˝  0©  ©  © ©© ©à ©à àà àà àà àh àh àh àh àà ®à àà ©à ©à ©© ©® ©à®® ©…Í
  51. %+%*˛)KB!
  52. ÍÍÍÍÍÍ 
  53.  
  54. 
  55. ÍÍ… … … © …… … ……®…»È»È»ÈËÈ»»»È»È»Ë9Ü „-%5f5f-%9®5g A1F5f1E)1F1F)5g=®$‰ „=à)-%˛$„-$‰√5f$‰A… „ „1F)Ç √1E1F1E1F9á „) ¬1F9áÇ-%))9á5f1E)%5f-% √-%%¢$„-%1F5f)1E-$5f=®)˘7)5g=à¢5f=à1F)-%)1f)-%A…5f-$ „1E √A®5fÇ9fÇ1E5g √-%9àEÍA…5f)%EÍA…=®9à9áA…A…9á1F5g-%)5f% √)%5f$‰-$5f$„5f-%˛9á%=®√5fEÍ£5g9á5g-%5f5f9á¢)$EÍ9à-%9á-%A…5f1E1F5g9à)A…N,=®9á5á9à%$‰1Db ¡À˚       ©   © …© © ® ©à ©˛ à ∠à ©® ©à˛ ©© … © …© ©©……ÈÈ
  56. !
  57. )K)K-l-k-l%K!+ÍβÍÎÍ Í ÍÍÍÍ…  © … © …Í… …………»È»È»È˛»MÈ»ÈËÈ»=ß5á1%1E5g9à √9áJ
  58. 1F-%5f1EA©9á5f9á=®=® „5áJ A©5f5g9á-%$„5fÇ-E)5g1f9á-$-%)1F%A®-%1F-$5g-$5g5f%1E-%5g9á$„1E5f=ßJ
  59.  ƒ9áA…1E%1E=®5f5fÇ1E9á9á √b))$„1E „¬))5f1E% √=® √9á=®A… √$‰)5f=®5á5g1F-%)-$-%1E5g-$¢ √=®)5f1E5fEÍ$‰=àA…9áEÍA…-$-%9á1E9á9à5f1E1F5g)1E1E5f-%$„1EÇ$„1E5f9á5f1%9á A1EA…=®1E)EÍJ =®1F)9á √5f1F-$5f5g1f)-$-$¢Ç™  ©  © ©© ©© ©© ©à àà àà àà àà àh àh àh àh àà ©'à ©® ©à ©© ©© ©® ©® ©…ÍÈ!
  60. !*%K)K-l-l1å-k%K
  61. Í…  Í ÍÍÍÈÍÍͲ… …® © ©… ©…®…»…»…»˲»»»»®˛»I® ®-%9à5f5á-%1F9á √=®J 1E%)=®EÍ5g-$1E=à ‰%$‰)1F5g-%-$5f)%-%1E5f9á9á1f1E5g)Ç5fEÍ5f1E9á5f1F)$-$¢))9á1F√Ç A)=®5gA…5fÇ5f1E-%5fA…Ç=® ¬-$q „ B-E5f)9á-%-E£-%A…) √-$ „-$1E=®=áa1E5f9á¢9á-$√√9á ‰)9á=©5g5g%-%b)A…A©)5f-%=®=® „9á)% √A…-%9áA…=®$„5g=®1f5f$‰-E$‰9áEÍ-E£1E=®=à)=® ‰ A-%1F9à „1E √%RM9®-$1f √-E=®1F9á-%)1E))a À©   © …© … © ©® ©à ®à ® à àà˛ àà˛ àà˛ àà …© …© …© … ©   © …© … © … ©ÍÍ!+!+)l)k˛1å-å-k%+ ˛ Í Í…ÍÍÍÍÍ…Í…  © …© … © © ® …»˛ÈVËÈËÈËȻȻ»»…»® ®A…$„9á=®9á √=à$‰£A…9á)$‰) „ „A…5g5f5f%$‰9à1E5f-%1E1F √-%√1E5f √ √-%5f1F1E)£9áÇ9á)9á=®1FA…9áÇ¢$„1EA…5g1F¢£$„$„-$1E √1E1F „-%)a5f-%9á5f9á5á))=®5f1%£5f5g)£1E-%Ç-$-$9áÇ-$¢ √ √9á9áA…$„J  √)J 1E1F1f5f5g√))5f „√1F=® „ „Ç1E=®EÍ5f9á9á-$5fEÍ-E1f1FEÍ5g£1f=®√%1E9á5f5g=©1F √-%1E-$Å1fÇ=®1f9á%IÍ-E=©-%5f$‰É-$ √ „¡™ …© ©© ©® ©à ®à àà àà àà àà àà àà àà àà àà ©® ©& © …® ©© …© …© ©® … ©……
  62. 
  63. %K)K-l-l1å-k-k)K!+Í  …  © …Í…È…Í®˛…c® ©® ©à ®à ®à ®»ÈË    Ë!    Ë    ËÈ»»®® ®® ® ©A»)1E9à1f1F)A…-%)=®1E √ „9á¢9á5f9á)$IÍ9á5f-$1F-$$„9á-%-$$„-$)9á$„))5f)$5f$„)%$„Ç)-%=® √$‰)A…1E1E9á)A®1E-%)=®$„9á9á5g5g-% „9á1F5f5ác9á1E5g9á% √√-$Ç1EJ 9á „)-% √-$5f)-%=®-$9á9á)¬5f1F¢9á9á£-%=®5fA…5f1E9á1F)%-%5f5g%%A®9à)1f5f5f5g-%9á-% „)5g5fÇ „A©1F$‰)1E$„-$)$9á=®5g1E=®A…J =®=®1F-$1E)$1F) ƒ%=®9á5g=à))$„¢)» © ©®˛ ©à ® à àà˛ àà˛ àà˛ àà˛ àEà © © … © … © … © …   © … © … © …Í
  64. !+!+)l)l1å-l-l-k)k*
  65. Í  © … ©…… ……©… ©… ® ©à © à àà àà ®®»È!    !    !)!    !    Ë    ËÈ®»˛®D©Ê-$1E-%-%)$5f=®-%-%5fJ EÍ9á5f5g1FA…%1f „ ‰%=®1E9á9á1E1E5f)1E$„1%9á=®9á=®-$)5f5g1EEÍ-%=á1E5f5g1E$„5f5f)b „$„)¢9à5f1F√1f1F9á5f √˛1E9á5f1E-$Ç=®-$)-$-$b)1E9á √)1E1E9á)-$)1E5f1E5f5f)¢5f-%)-%9á-%9á-%)EÍ-%A…=®1E5f1F5g5f-%A®=®)£-%)1EA…5g9á9á)$5f5g5f1Eb-$1f=®9á5g$„1E=®9á5f-%¢1F=®1F9à9á$„9á1f9à1F√EÍ% √9á1E „5f$„1E-$¶©à ®à àà àà àà àà àà àg àà àà àà àg àà ©© © © … © … …  © … © …®˝…ÍÍ  %L)L)l)K-k)K)k!*
  66. 
  67. Í © ©® ©® ©® ©® ®® ©à ®à ®à àà àg àà à ®…È!)ÈËȻ˻» ß ® ®®áA«J =à=® „1EN,5f=à$„√1EA®-$1E-$£1E5f)$-$ÅEÈ√$‰9á)ÇA®)A…5g-$¢Ç-$5f)1E%)$1E$„5f √¢1E-%√1E1E9g5f9á-%5F)-$)¢$„$„ „-$-%=®A®¢-$5g)¢9áe-%¬-%¢-$ ¬A…5á „$„-%1E5f$„$‰ √1E%)1E$‰-%9á1F1FA®-%¬-E1F5f1F5f5g9á) √)=àEÍJ 5f5g5f9á%%EÍ-%-%EÍ=®1F5gA…9á=®5f%)=®J =®Ç£Ç5f1E)%-%1E1F=®)%)$‰-%1F9á9á%$‰J 1f-$1F5f1fÇ9g9áA$„1E¢«à © à ®à˛ àà˛ àà˛ àà˛ àà˛ à-à © © … ©  …… … …  © … ©……Í ÎÍ  !,%L)L%K)k%K)k%K!K
  68.  ÍÍ© ©à ®® ©® ®à ©˛ à © à àà˛ à\g à à ®®ÈÈ    ÈÈ»»»… ® ® à ®à à$‚ ‰9à5f%)%-E-%9á9á$‰% „5f)1E-% ‰ „J %-%$„9á-EÇ1E1F!1E9á1%5g)$-$√)-%9á1E)b5f-%1E-%Ç)%-%$„ÇÇ √£¢-E)$A…=®9á)$5f5f „ AA…9á √5f1f „-%¢¢)9á1f)9á$„1E%9á5f£¬1E% √-$))$-$)9á=®-$-$5f9á5f˛1Eh-%1E$‰A… „1E=® A1E9á5f5f5á1E9á5f1F)=®5g5g1F√)9á5g9á$„)a5f1E5f1%)1E=® √9á5f-%)=à-%9á=®1EA©9®5f$„5g9á9à$„)5f9á=®¬1E-$ bÅ-$«àà àà àà àà àg àà àg àà àà àà àg à® ©© © ©  ©…… …  © … ® ©˛…^ÍÍ   +!L!+)l)k)l%K%k!+!+
  69. 
  70. Í ® ©à àà àà àh àà àà àg àg àg àg àà ® ®…®…»»®®á®á ®g áG-F-$9à=®)9á9á)-%5f1E=®=®)A…5f1E$„9á5á5f √$„-$9á1EÇ))a „1%1f-$5g-%5f˛-$ 9á¬-%-%5f1E5f-%=®5f1E)-E1EIÍ „ √-%1F5f5f-%1F-%9Ü √5g=®-% √-$=®1EcA…9á1E-$)¢1F5fÇ-5g1%)-%9Üb)$)1E √$„-$5f$„1E-%1f1F-$1E)5g9á)1FEÍ£9á%$„9á5f-EA…$„5fN,5g1F)$$‰1FA…1EA©E…J
  71. 9á-%-$-% „5f=®1E9®√9àJ ))9áA…A©1F-%5á£1F9á)1E1E-%5g1EA…5g=à5f9á9g5f)£aßà àà˛ àà˛ àà˛ àà à à ®à ® à ®® … … …Í…Í Í… ˛…ÍÍ Î  !,!L)å)l-≠-¨1≠)l)l%K%L!++
  72. 
  73. ÈÈ® ©à àà˛ àà ®à àà˛ àà˛ àà à® ® ® ©˛ ®Q» ® ®á àá àg hƒA» √A…A…)%9áA…9á)$-%1F£=®1F √1E-%1E1F-E5f1E5f1E1%5g1f1E √£)-$$„%--%$„√=®5g¢-%1F1F1E1F1E1E-%=®$„9á)9á5g5á%£EÍ5g))9á √ „5á9à5á=®)$1% √%5f1F-$-%)1f)$„ √$„¢5f9á1$1F$„√5f-%1%-%EͲ „f-%A»1E%-%5g9á¢√-%EÍ5g-%)1F1F)9à5á=®EÍ1F9à5gÇ1F1fÇ)%1FA…=áEÍ1EA…5á9á „A…=®£-$-E¢1E „)EÍ=®9à$‰ „=®)9áA…-%1F-E1%5f)5g)=®1E1E ‚Ç«®à àá àà àá àà àá àà àà àà ®à®®……Í Í… …Í…Í˙…ÍÍ +)l)ç1Õ1Õ:1≠-≠)l)l%K%K!*!*
  74. 
  75. È
  76. ……®®á àá àà àá àà àá àà àá àà àáàà ®à®à ®áàá ág gg áhƒEÍ=®Ç-%-% „1E√%=®1E1E$„%=à$‰1E=®)5f-$$„)$„) „1E-$1E-$$„A®1F5f9ß))9á=®-$1E=®5f)5f1E-$1E-$ √)5f) √¢A®)5f1F1E5f „5g-E1% ‰)5f¢)1%1f    e1f£ √)9g-$1E)-E-%9á=á$‰b)b9f ƒ)$„$‰-%5f5á-%-$1EÇEÍ1E1E-%1E1E1F9àEÍ √=©=©9á$‰J 5fEÍ9á9à=…9àA…N,N,Ç=®5g5f-%5f1E-%Ç)=®$„5á-$9àA…AÍ=®1F)1F1f)5g5á1FA…=®A…5fA…F 9á9áA…)=®EÍ-% „5f¢1E ¬« ® ® à àà˛ àà˛ àà˛ àà ®® ® ©  ˛Í Í ˛Í…Ͳ…ÍÍÍ
  77. %l)å5Œ>JpB/>1Õ1Œ1≠1Œ1Œ5Ô5Ó5Ô1Õ1Æ1≠-≠!*…… ©®˛ àà ® à àà˛ àà˛ àà˛ àXà ©à ®à àà àá àg ág à àâ)&5áA…EÍ9á=à1F)5f-%¬1E)1E1F=®9á1E9á=®1E5g5f√9áAÈ) √)√9á1E9á=®)1E=®$‰ √$‰ √5f1E5f)1E-$)5f=®$„-%1F1f1E%Ç)5f=® √$‰-%A…-%A…)£=®)Ç$‰1Ev)=®-%-$$„%=®-E¬$„b5g5f-$-%-$Ç5f-$1E √£ A5f9á=®5f „ √5f)1E-%A…)5áAÈ%%5g9á9à „√)=©=®5á)EÍ5gJ A…¢1E$„¢-%-$ √=®%-$1EÇ=®5á1FEÍA©-$5g9á9à1F1FEÍA…1E) A5f1F5á=®5g9á9à1F5fA…9à) √-$$„•…à àà àá àà àá àà àá àà ®à® ® …˛Í…Í…Í… ……˛………Í+1≠>JpR∞V±5Œ5Ó1Œ5Œ5Ó:B0FPB/:˛>r5Ó5ŒFPN±
  78. ® ®à àà àà àà àà®® àá àà àá àà ®à àà àá àg ág gg áá à©£1E5g-%=®-%)-%9á5f-%1E9á1E „ √ b)1E)9á-$9á5f-$-%J =ß-$¬1E)£1E1f5g)9á-E)$„Ç-$1E9á5f-$ √-%1EEÈ√-%-%$„)1EÇ „%5f „)% „ √ √-$A…-%-$9á1E1Fc%)5f-$)5Ü=á1F9á) „√b=®)1E)¢$‰)5f5f)$b$‰-%√EÍ1F5g=à-%) √)1FJ 5f1FA…-E1EN,5f)9à5g=®-%)%)1F=®N,9®=®$‰5f-%)9à1F5g-%)5á)$„)5g9à-$A 5f9à$„%)%9àN,-E)%Ç-$5g-%-%=® „)-% √√¬bÍ ®à˛ àà˛ àà˛ àà à® ©…ÍͯÍ0…Í………ÍÍÍ)lJpR∞ZÒRêBP>/BP>/:>/1Œ%l!L 
  79. È
  80. Í
  81. È
  82. È
  83. B05Œ® ®à ® à àà… … ©® ©à àà˛ àà ® à àà˛ àRg à g àg à à ®©  ƒ1F √√$„1F1E √=á1F=® „%% √9áA…%¢√ B-$-$)$‰5fÇ-%5f) „-$Ç1E9á1Fb1E=®EÍ-%1E √É%5f1E-%5f √-%EÈ)9à=®)9á1F)A…A…9á%1f=®)$„%9á$„1E9á5f=9á-$))¢£ „£-$-$1EÇ1E%9Ü √=ß1E$„-%)-%5f5f¢ √-$)5f5f1F-%=…N, √£5fA©$„=®A…)-%EÍ%1f=®9àA…9à √=©$‰=®=®9à-$A…9á-$-%5á˛1Eg-%5f9á5f=®1f9à1F9à5f=à9á5á)9à)$EÍ=…=®-%=®-$%%)5f1F))¢1$Ä »…á àà àá àà àá àà àà ®…Í…ÍÍÍ…Í ÍÈÍ………È…ÍÈÍ)åV—V—R±FPBP>>5Ó5Ó)å!++!+!++
  84. +
  85. 
  86. ÈÈÈÍ……FP…à ®à àgÈ…˛ …aà®à ®á àà ®à àà àá àá àg ág àá à® ©©%%5f)5f5f1F-%)1E1F5f1F5f)1F)=®9á- √5f$„ ¬ √¢-%1E1E5f-%5f-$¢)A…$‰)5f5á)5f% √-%)$1E¬Ç A£9á1f-%5fEÍ1F-%Ç-%=®)-%1F9á9á1E-E1F9á)1%1F1E=®-$-$1E √9á1E%-$)$-$¢b£ √ „1E1F)-$)-%1F1E1f1E-%9á-$9á9à5f1F5á5g5g$„F -%)=®=©1f=®)9à5g9áA…=®-%-%Ç1E-%5faA J 5gEÍ9à-% ƒN,5á1E5fJ 9á-%5g9á=®)J 9à5g£1F9áA©A -% √=®9®EÍ=à5f5f1E$„-$b)     … ®à ®à ®à ® à àà ®® ®…ÍÍ
  87. Í
  88. ÍÍÍ
  89. ÍÍÈÍ…ÍÈÍÍ
  90. %KJpV—NëBP:-≠:1Õ)l!+!K!+!+!K!+
  91. !K!K!+
  92. 
  93. ÈÍÍÍ …%l%K®® ®g
  94. 
  95. 
  96. ÍÍ ®®® …® ®à ®® ®à ® à àà à á àá à à ®® ……  ‰IÍ1E-%1EEÍ5f)1F-$) √A…1F)É5f5f9á5f£¢9f5f5g1E-$-$-%-E9á √5g1E£ ‰9áÇ B-%=à5g9á√Ç√=à √EÈ=ßÇ) ¬-%1%-%$„=®9á b-%1F1F$‰-$5f5f=®$„5á9á-%1fW¢Ç¬=®)$„¬1E √%5E5e¢=®1FÇ „ „E…1%9á)1F)Ç$„1%5f9á5fÇ1E)A…$„1E=®9á%1F=®AÍJ 5á1FJ 5áJ EÍ1F5f9àA…1F5g9á1F √¢))A… „EÍ) √9á$‰-$5gEÍ5gA…9á=®1F „5g5gA…$„9á √A…-%A…1F9á˛1F35f-% √b-$)!+ËÈ ® ®à®® ®à ®à ®® ®…Í…ÍÍ
  97. ÈÍÍ
  98. …Í…È…ÈÈÍÈ
  99. +1ÕR∞FP9Ô-Æ1Œ5Ó)å%K%*˛!++
  100. 
  101. ˛!Ku
  102. 
  103. 
  104. 
  105. …
  106. ÈÈ …)åà®á5Õ%k+!K)ç+)ç%l®à ®à ®à ®à àá àá àg àg àá ®® …©    ƒ ¬=á¬)-%A…1E9á-$1F$„√)$„9á √-% √5f „$„√1E-$$„1E)-$$„)=®9à)1E¢√5f%$„5F5f1F1F-$5f5fÇ-%=®9á) √5f5f)$1EA5fEÍ-%E…A…%1E))5f5gÇ¢ √A»5f=á)Ç=®)5f$„)-$$„Ç5f9á9á-$-$ √ „¢É5f5f˛)U%$„A…5á5f¢√A…9®1F1FA…5g9àJ )9àN,J A EÍ=®1G=©9à9á9á5g=©5g=®-%1F5f1F)9á%-%EÍ-%)$9á1fA A…1f%=®N+EÍ9à5g5f1FJ =©1F9à$„1g1F1E9áNL$„9á=ßb¢1"+!*        … ©® ®® ®® ©® ……˝Í
  107. ÍÍÈ
  108. ÍÍ…ÈÈÈÈ
  109. Í
  110. 
  111. %l>B/-Æ1Æ-≠)ç!K)K%K)k!K!+
  112. 
  113. 
  114. %L%L!+
  115. !K++
  116. +
  117. +ÍÍ%l©à1Õ%l…%l%lÈ…Í)ç…®® ©® ®à ® à àà à á àá à à ©®   …    Î‰J
  118. )$-%1E)5f=®-%$„A®J
  119. =ß=®)) „A©5f1E9á√ „ „ √1f=®$„-%E… √1FEÈ1F)5f5f%$‰%ÇA1f9á)))$9á%b9á=à-% √a=à5f1EÇ ‰) ƒ5g5gÇ9f)9á9á1F9f-%ÇM-$9á-$-%$„ √1E1E A5E$„ √-$-$)5fA…-$¢5f √)-%5fEÈ=®)5g%=®5á)9á=®9áEÍ9á)5g9à=®J 5g9à)%1fA -%))$1EAÍ1E9áJ 9á1F9á-%5f5g5g-%9à%√J 5g¢ „5g-%-$1f¢)%5g-%˛=®9à1f5gA…)%)=®=®%EÍ-%)$„Ç B %L!    !*È    È…® ®® ®à ® ©  ÍÍÍÈÍÍÍ…È…È…ÈÈ
  120. È
  121. 
  122. +-å1≠%l1Æ)l!K
  123. %K%K)K%K%K
  124.     
  125. )l!K**)å!K!K+!K
  126. +
  127. +Í)ç®1Õ%lÍ!K%lÍÍ … … ©%l* …® ®à ®à àá àg àg àá ®® …©   Í  ÉÇEÍ-%¢¢)¢-E-%¢)<)$„5g-1F-$$„$„9á-$ √1E5f¢=© „-$ ¬ „b √1E%)9áA»¢5f=®Ç-$-%)-$1f-$5g- „-$5f1E1E)1F9á=®¢1E%=®A…=© A9á √Ç1FEÈ-$5ái1E ¬)$„1E √)$A…-%¢A…5f√ √)b9á)$‰$„5f1E-%√9á)1F)9áEÍ=®-%=…A…-%-$9à)J 9® ‰$‰1F)%)%=®-F1FZè1f-%9àA…$‰)=®9á5fA…5g9á-$F $„EÍ1F$‰5gA 9à$‰9áEÍ9á5f£EÍ1g5á1F9àA 5g-EN,EÍ=®9à9à5gA…9á√$„-$$„¢!%*!    !    È
  128. È…®˛ … ©Í ÎÍ
  129. Í
  130. ÍÍ…È…ÈÈÈÈ
  131. Í  +!K)l+1Œ)å!+
  132. %K%K)k)K)K!*
  133. È
  134. 
  135. !K%l1Œ-≠%l!K)l!K!K+!K+
  136. )ç%l
  137. 
  138. +)ç++ … ……ÍÍ … …® ©® ®à àà àá àà ©©   …   Î  À-E%b-$=ß=à¢1F5f1F)£9g%1E$‰)9á-$£1E9á-E5f1f1FA»1F¢1f5f1E1E)1E5f%$„1F) A®1fA®5f$‰√=á9á5g5f1E5f% „EÍ)1E1f5g=®-%-%$„£√A…-E5f)1E)-E-$6 „1E%)$5f-$Ç9á-%Ç$‰5f¬-$-$ „¢1E√1E-$1E)$√Ç1F1F-E)1F9á))$)5g9à=®5g)5g=…N,RMA…-%9àRM)AÍ=®5g1E%-% „˛9à-%A©A…))%%9àJ =®˛9ád1FA®N,RM-%9®A…EÎ9à=©J 9á9à1F1F√EÍA…5g)%)=®5f ¬$„ ¬$‰!
  139. !            ÈÈ © … ®……Í ÍÍÍÍÍÈÍ………È…ÈÈÍÈ
  140. 
  141.  
  142. !+!*%l%l!+!*!+!*%J%J)K!*!*    
  143. …È!K-ç)å!K!K)å%l%l!K+!K!K
  144. )ç+…+%l!K!LK…®˛ …_® …® ©®®à àá àá àá ®© … ©   Í …  ©=á9á1E1E1F1E1F5eA®5f √-%=à=®1E1E5g$„1E „√a9Ü9á-$¢ √-$=®=à1E1E5f1E¢£)¢)$1E=®¢$‰=á9á-%¢)-$5f1E1F1EÇ)A©5f1E1E)1%-%9à5f)1Ea1f5g √-%)5f1E)9ÜÇ-% √5e „)$5f£)1F% √1E))9áA)5f%=áEÈ1f5f-%-%˛9á)$„EÍ9à5gEÍ=©)-%J =®A…N-=©%%A…1F¢A…A… ‰9à=©A 5g5g5f1%=®EÍ)$%9à1F=®9á=©9à-%¢$‰1F˛=®5á=®5áA -%A…EÎA 5g-E-%)%=®-% „1F5f1%-$) ¬!*    
  145. Èȸ… Í Í ˝Í…È…˝ÈÍÍ
  146. 
  147.  
  148. +!*¸%K%J)K%J)k%J!*    
  149. ˛Èy!K!K)å)ç5Ó-≠)ç%L%l+%l+,
  150. -ç!L%l)å!L+!LÍ… … Í
  151. È©® ®® ®à àà àà ©©   …  Î Í  !    5f „-$1E1E5g)ÇÇ£-$9à-$1E)1E5f √5fA…1E) √) √5f √$‰-E9á=®9à1E1E=®)5fA»Ç£¢) a=®)A…1F1f1E-%5f-$1E1f¢1EÇ1F=®5f9á¢=á9à1F5g5f£)1E-%=®¢e1f% √J
  152. ¢√-$ √ „-$5f-$ „=®1E5f5f£¢Ç-$A…Ç-$5f=à1E5f))5g1E¢5f9á=®5g=®5g1F9à$‰%RnA A…)5gE EÍ „5á=®)¢1FA…1E1E-%-%A…$„1F1fF 9á9á5g-%5áRM1f5f$„1F=à1F=®)A 9á9á1FA…1F)1fA…=®1F5f¢A)$„¢¢
  153. 
  154. È…˝…    …ÍÍ 
  155.  ÍÍ…Ͳ…È…ÈÈÍÈ
  156. Í
  157. Í
  158. 
  159. !+%*˛)k)J)K)J%K%*%J!*!*        È*    %L>-≠-≠-ç)å)å%l%K!K+Í
  160. +%l)å%l%l)ç!KÍ …+++Í!L!+®à ®à àá ®à ©© … …  Í    …  È9áA…-%-$) ¬=®EÍ) „Ç)1E „%Ç9á%)¢1E$„$„-%=®1E-$)£ A1F-%)% √5f£5fA»)1F))Ç) „9á-$)5gA…)$J -$5f-$) A-%5f)$„-%%-%9á5á)5fA©-%1EEÍo1E-$É1EEÈ1FÇ9Ü1F √1E-$) „$‰5f1E1F9á=® b)%=®b)%-$1E)EÍ9á9á=®5f1f9à9áA…5gZèEÎ=®1F9à5g9àEÍ5g √9à5gA…1F-%9®=®A…=©5g5g5á)9àA… √$‰-%5g9à=©A %)9à=®=©))EÍA =©A J EÍ)5gRM-%1F5f-E=©1F5E1EÉ$„) ¡!        È…È…ÍÍ 
  161.  
  162.  ͲÍ7ÈÍ…ÍÈÍÈ
  163. Í
  164. Í 
  165.  Í
  166. !*)K)k-k)j-k)J)k%J%J%*%J!
  167. !*    
  168. È
  169. È)ç%l)å%l)ç)å-≠+
  170. Í 
  171. %l!K%l)å1Œ-≠+ … ˝ …^©+!L®® ®à ®® ©©    Í Î Í    …… √-E-%1E-%5f ¬ √1%9á-%√√A®1E1E-$9á1%¢¢A»Ç1E-$)=®-$1E5f¢1E1E5f)$%Ç5fA…=àAÍ=®-%1E$„-%1E √9á5g9á$‰5f=®1E9á9á5fÇ √=®5f5g-%-$5f5f-F%=®1E √-%¢ √ÇÇ¢J
  172. -$b)9á)1F5ᢣ) ¬$„$„1E=á)))9á9á1E-% √%9àEÍ9á9à5gEÍ=®5g-%VmAÎ5gEÎVnA AÍ1F-$EÍA…-%1F=®9à1E5g=©J 5g √EÍ)%AÍJ 5f „-%A…J 5gEÍ=®A…EÍRMA…9à √5g=©A 1g1fJ  „ZnIÎÇA©5g$‰EÍ¢9á1E √Ç1DÈÍ…È…ÈÍ
  173. Í Í ÍÍ…Í…Í…È…ÈÈÍÈÍÍ
  174. Í
  175. oÍ
  176. È!*)J)k)J-k)j-k)J%J%*%J!*!*!    !
  177.         È!*!K%K%k-≠-≠9Ó!K
  178. È
  179. +%l*!K%å5Œ1Õ!L …® ©® …® ©® …… ®® ®® © ©   …  Í   …   © …©-#Ç1F9á9á)EÈ1E5á9áA…1E%a5f)1EÇ)=®ÇA»1E!5g)$‰A®¢9à1F))=®=®1f √$‰$‰¢$„-%A…˛1E5f¢9á1E- „√-%5f1FA…5f9á1E √)1F9á1E¢-%A… ‰Å%ÇÇi5f5f))É √√5eƒ √5f √1E$„1E9á1E √1E-$5á1EA»9à√5f5f%EÍ$‰ ‰$„5g5á1F9áN,1F9à1F1g-EA…=©=®J A  „)-%A 9à √=®EÍ5g5áAÍ=®=® „=®9®N J N, ‰$‰1f5g%)$5g9®A…A…EÎA…1g$„9àA A…A…5á-%J F -%=àE %1e!=á9áÇ√
  180. ÈÍ…ÍÍ 
  181. ˛ Í ÍÍ…Í…Í…ÍÈ
  182. Í
  183. Ͳ
  184. Í
  185. Í
  186. !*-k-j˛-k7)k)K%J)K%J%K%*%J!**
  187. !K%k)k1Õ5Œ-≠1≠%k%K!+!K!K)åK!K!l)é%ç!L +© …® …® …® … … ® ©® … …Í Í Î Í … ˛ …: -F9áÇ √ „%¢ √%--$5f-%-%-$É$„-%-%5f)£9á9á√9á=®)$)A=®A® ¬5f1E5g5f¢$„-%EÈ)1E=®)-%A…)1F$„1%1E1F5f „-%A…%˛5f A®)9à1F-%√9á5f1F9á5f1Dk1E „-%=á-$)Ç)A» √ √))$„¢5e$„9áÇ „!-$£=á))5f-% √9á)9àEÍ=®9á1F5gEÎ9àF EÍ$„5á9á1f-%5á-%A…=®A…RM-%)-%5g1E%=®J √=®a5g) √N,1F1F5áRMJ %Ç=®A…1FF =©1fAÍEÍ=©EÍA…-%%EÍ1F)-%=®1E£a¢$‚«ÈÍ…ÍÍ
  188. Í Í ˝Í…È…Í…ÈÈ
  189. È˛
  190. Í
  191. Í
  192. È
  193. 
  194. %J)J˛-k)j)K%J%K%J)J%J%K˛!*%%K)k-å)ã)k%k%k%K%K-≠)ç%K%k
  195. K%l!ML+Í © …® …® ©® …® … … ® … …Í ˛Í…   … …© …© … »¬b5f$„)%EÍ9á£!1E-$ √5f-%-$9á˛1E45f „ √=® √√1E9á9áÇ£$„1E¢-%A®)=á)9á-%=á „-%5g%£$„¢) √ √1F-% „)$¬1E))√ „=®1E)A®√ √9à1f$„A…9á))$„£5f1E=®5g9á5f1%-%1E5f1E¢% ‰9á)-%√-%$„1f-$Ç-%F
  196. 5f)$1F=®A…EÍ9à √=©J A…A A…5g „5g=®9á √=©J -E-%R,$‰EÍ9à)$‰AÍJ 9á-%N,=®1fA…A©=®5á)%5gA…=®5g=®9à)N,J -F1FA…A A…=®5g)9á5g=®J 5f5fEÈ-%)) ÎÍÍÍÍ Í Í Í
  197. ÍÍ… …ÍÈ
  198. 
  199. 
  200. 
  201. 
  202. 
  203. 
  204. 
  205. 
  206. Í
  207. Í-
  208. Í!+!*)k)k-k)k-k)j-k%J)k%J)k%J)k)ã1¨1¨-å%k%k!J%K1Õ1≠5Ó)å!*)k!K!K!L!L+ Í  … …Í … …©˝ …[Í …  ÍÍÎÍΠ   …   … …© …©È$„1F5f1F$„$‰)1E1E-%%1EÇ9á-%-$-%5f1E5g1E5f „1f-$1F=®)%1EEÈ1E9á5f „-%1E √£Ç5ܬ1F)A…1F5f$„A…5f1EJ
  209. √$‰9á1E-$1E5f1EA®√%-%1E)£5f)-%)1E√)%1E$„˛)]9Ü$„1E-%) √9á$„9á5f-$$„1F)A…9á£-%)=®5f5fb9f5á5f)%1FA…1F9®N 9®5g9à9á9à9®EÍ-%A…EÍ5f¢9à9á√ÇA EÍN,J  ‰-EA 1F5f)F -%1FEÍN =®=©9á=…EÎ5g1FA… √=©A…A…9á1f=®9á1F5áEÍEÍ=à%)5g√)=á „$· Ï…˝Í Í ÍÍÈͲ…8Í…ÍÈ
  210. È
  211.     
  212. 
  213. 
  214. 
  215. 
  216. ÈÍÍ
  217. 
  218. !*%J)k)J)k)J-k)J)k%J)k%J1¨5Ì>5Õ-å%K!*!*%K!J!)!J*!*!K!J!K*+
  219. 
  220. Í Í … …Ͳ …`Í »…ÍÍ…Í,   Í Í …   … …© …© …®©Ë$„ √A…A»-%-%1E)9f √)9ÜÇ-$-$5f-$-%1E-$)1EA…9á1EÇ √)Ç „A…)1f)¢5g=®1E$„ÇÇ)-$Ç-% „1E5f1F „√1E=®1E1f1E-%1E)9á-%)5á5f-%1E9á5g)-$ „1E-%D%)£9f£ A$„¢Ç$„)√$„¬√5f-$ √=®%)9á)=®1E9à1E5f£-%5g9á9à-%A…9àRM9à-EA…1f1ERMJ 1FJ =®)√5fJ EÍ1E9à5f=©A…9àA…1F=©5f1F)=©1EÇA©5á˛=©/AÍEÎ1gA…RM1FA…EÍF =®A…EÍEÍA  ‰%EÍ5g5fJ =©b√9e-HÍÍÍ Í Í ÍÎÍÍ…Í…ÍÈÍÍ
  221. 
  222. 
  223. 
  224. ˚
  225.  Í
  226. Í
  227. !*)K)K)k)K-k-k-ã˛)kB/JoJp9Ó-å-å5Œ5Œ9Ô-å)k!*%*%J%K!J%k!*+
  228.  Í Í…® …Í… …ÍÍ!L+
  229. Í+Í͠Π  … …… …® …® ©®Ë1E „b=®$„-%5f5f)5f√A»A®√$„5f=®-%-%1F-%1EÇ√9á-%%9á1EÇ)9á=®9á1F%1E-%1E5á=à-%)-%9á5f$„%=®9á¢-EÈ9á1E1E)$)=à9á$‰IÍ1F5g=®9á1E9àA…% √Ç=ß`1E)1E√)5F$„5f „=á1E¢$„=®9á))1E¬5á¢5f-%-% ¬EÈ)A…-%-%)9à5g%)$)% ‰EÍ1EA…A…5g¬5g5f)EÍEÍ-%)1F1%1F)$√-E9à √5fN,=®5g5á=©=©A…1F)=©-F=®J 5g9®A…¬EÍRM=®=©A A…=®A…9à9áA…5g „J =®N 9à5f¢b¶˝Í
  230. Í ˝Í …Í…Í…ÍÈ
  231. È
  232. È
  233. È˛
  234. 
  235. ˛
  236. "Í
  237. 
  238. %K%*)K%K-k-k1ã)k)l)kJOJpB/-¨5Œ:>/5Õ-å!)%J!)%J%k%J!*%J!J!K
  239. 
  240. Ͳ …g® …®È…ÍÍÍÍ+!K!l
  241.  Í ÍÍ …   … …© ©® ©® ®® ©!1F)$%¬1E √5f5f)$„-$ A=®A…$„)1E)-%1E-%)1E-% ¬A…5fA…5f1E √¢$„5fA…A…-%J 5g1%-$1E=®-$¢)-%1%-$5f1E¬Ç1E5f5f1F$„ ‰1F-%$‰√5f%a-$1F=®1F-$) √j1E1%9áA»=® √$„-%5f¢9á1E£¢1E-% „))-$$‰)$9áb=®)1F1F=®F 5á √5gEÎ9®9à1F √ „-%5g9á9á „ ‰√=©=®J =®1F9à9à1F9à-E=®1E9àA…1FAÍ9à=®A EÍJ =©A…=©9à$‰EÍ=®1FIÎ%5áN,A…A…A 9à5á5g=®EÍ9à5g5f9à9®%9á=®%ΔÍ Í Í Í Í͸ÍÍÍ
  242. Í
  243. È˘
  244. !+
  245.  
  246. !+˛%K@)k-k1å)k-å)kB/Jp>1≠>:5Ó)K)J%J)j%J%K-ã%J%J%K%K)K%K!*    Í© ©® …®……Í … 
  247. !L!L%l+++  Π   … …© …® …® ®® ®©9e5f=à˛5f
  248. 1f)¢=®1E¢A»Ç1fEÍ1E˛-$51F-%9á1f5f1E9á1f=®$„9àEÍ1F √5f%1E1E9à9à1F9á1E%9á5f9á)$-%)$1F-$1E1F5f-%1E5f=à)% √%5f)√ „5f5f$‰9à1FA…EÈ1E1E A£¢=®¢√1E¢)5f9á-% „1E√Dz9áx)-E√£)$„ b-%-%=©=®$„A…N,9á5g1F5á-%)9á=®=®-$1F)1F)5g=®5g5gF 5á1F9á9á$„5g)=®5á5g9®%5f1FEÍ5g=®A 5g5g1F1fA A…EÎ5gA…A…1fA…9à9àEÍ=…$‰9à5f=®-$Ç)5F-" Í Í Í
  249. ÍÍÍÍÈÍÈÍ    
  250. È
  251. È
  252.     
  253.     
  254. 
  255. 
  256. 
  257. *
  258. +
  259. !+!*%K%K)k)K-k)k-ã)k5Ì>/-å˛5Ó)l%J)J)J%J%I%J1Ã!J!)%K%I%J%k%J!J!*È …® ©˛® …®Í+ !K%l+!l+!L
  260. !LÍ…… …® …® ©˛®L ®à ®)%Ç) √9á$„1E5f-%))%1D)=®-%5á1E1E9à5á=à1E1E£-$1f=®1gÇ1E9à=®)√ √ǬÇÇ$‰¢√=á √=®1E))-$1f-$1F-$))1E-%-%1E1E)-$¢9á5g)1E √9á-%b√c£ „-$-%1f „$‰-$9á5f$„!1EE…=® ¬9á1E√ „1F-$5f-%)-$9á1E1F¬5g9á=®1F¢A…VnA…5g9à%-%J A…1F1f$‰9á5á1E9à1f-%EÍN,1F-%9àAÍA…=®1F=®1F1f-%J J EÎA…A…J RM=®9á)% √-%9à5á9àJ 9àJ Rn5g=®9à5á1FA…$„5g£ ‰1E-F  Ͳ Í Í
  261. 
  262. 
  263. Í
  264. 
  265. 
  266. 
  267. 
  268. 
  269. 
  270. 
  271. 
  272. 
  273. ˝
  274. !+
  275. !+
  276. ˝!+/%L%K)l)k-l-ã1¨5Õ1≠5Ó5Ó-å%L%K)k%J)k%J)k9Ì%K%*)å%J)j%J)J%J%k!*
  277. … …® …® …® ©®Í
  278. +%ç!L)ç!LL˛+V … …© …® …® ®® ®® ® ®-#$„$‰=®5f5f1F1EA®A…5f) „ b √)-%)$5g)EÍA…-%-%=à-%$‰5f „9á√%9á9àA…9g1f1F9á5Ü5g-%9á¢9á¢5g=à1E-$1E-%5f-%9àA…9á-%5f=®-$)-%$„5f)=®-%$„ √√%1F-% √-$-$-%5f5f1E¢1E-$-$)Ç1E=à9á-$1F-$$„-%9á-$1F9á9á=®=®9á=®)9á1F9á1EÇ1F=®5f9á √-%5f=®A…9áEÍ-%-%A…5f=®AÍ5g5gVn5g$‰AÍA…5g5g=®J A…1F√5g1E1FA…1F)J =©J N,5g9à9á9àEÍ)% √=©N,5g9à=®9àA…J 9á9á a-$     
  279.  
  280.  Í
  281. Í
  282. 
  283. 
  284. È
  285. 
  286. 
  287.     
  288. È
  289. È
  290.     
  291.     
  292. 
  293. *
  294. +
  295. !++˝!+"%K%K)k)K)l-å-k1Œ5Œ!K%K)k)k)J)K%J)k1¨!J%J-å)J)J%I)J%J%K!*!*È… ® …® ®˛® …®Í …!L)ç)ç
  296. !L+ !L …® …® …˛®) ®à®à àAß=®££) „ „5f¢$‰=®1E=àEÈ$‰-E)1E$„ √a-%=®1F5f5g)9áA…9á=®Ç)-%)1F1F˛5f!)1EA…%¢ „√1E5f1F-$1E$„-%))%1E9á „9á9á1f1%)a „5f „J
  297. 5f)1E1F-%j1E=®=®¢-$1E1F¢9á-%√5e1E¬=à-$5f5f √1FA…9á9á1E5f1E1f1F9á9á=®1F5f-%=®9à-%5f5f1F=® √√1E9®5f5gA…)$)A…-%1f=®-E%A…)=®9à=®5g9àEÍ=©AÍ9à1f5f%%5f9á)1F$‰5gA…=©AÍ5áAÍ=…9à=®9àEÎA A…N,J EÍA…1F5fb,
  298. +
  299.  
  300.  
  301. +
  302. +˚
  303.     
  304. 
  305. 
  306. 
  307. ˝
  308. +
  309. +
  310. ˝!+!L!+%L!K%l%K)l)k1å-ã1≠!K)l-k-ã¸)k%K)K-¨˛%Jq)J)J)j%J%J!)
  311. È… … …® ©® …® …… … …ÍÍ+!L+ -Æ® …® …® ©® ©® ®® ® ®9d-%5f%1E$„√Ç-$%$‰ „Ç$„=®1F=à)1E5f5f1F$‰9á=®5fA…9à=…9à=®=® „1E5g-% √9á5f1f)-%1E=®5f-9á1F5f)$‰EÈ-%$„=® ‰ ƒ √-$√5f)=®9á5Ü$„)√ √1%-%=®9á √ √√)-$¢1E5g)A-$$„£$„%$„)Ç1E)$5f1E)$1%£-%5á9á1F)9àA…-%%=®)J
  312. EÍ)5fF J 1f9à5g=®1F$‰A…A 9á$„ „-%9à1F5á)$A J 9à-E=®=©=®A %J N,A…=®=©9à9áA…J EÍ9á5gA J 1FRMJ 5áJ 9®EÎ1g √5á1F)1f1E ¬-&  
  313.  
  314.  
  315. +
  316. +
  317. 
  318. 
  319. 
  320.     
  321.     
  322.     
  323. È
  324.     
  325. 
  326. 
  327. 
  328. +*!++!+!+!K!+!L!+%K!K%K%K-å-ã1å-k-ã-k-ã-ã-k)k)k%K)k)k1¨)k)J%I˛)Jo%J%J%*!*    È……® ®® …® …® …®   …Í+L
  329. L-≠®® …® ©® ®à®à ®á®1#1EÇ9á=®9á1E1E$„)1E=à1f-$)$A®9á%=®=®-%A…1F5f-%Ç-%$‰ „-%1E1FEÈ5g1E1F1E1E-%A…)-%5g-%5á1F5f1E)9á „ b9f9á-$1E ¬A…1E √√9á9á1E5á1F$„=®5f1f¬√-$5f_%-$1E$„)-$1E-%=ß5f))√-$%)-$$„ „-%%Ç1E% „1E5á-%1F$‰=®EÍ5g-$£ √1F „9á-E ƒ)1E¢)%9á-% A1F1E-$5á5g%1F=®-%5g5f5g1f1F9àJ =®5á=®A…RM=®9à=©5g √J 5áN,=©5àA…J 1FEÎEÍ9à5g=®F EÎ1FEÎ1F9à=®-%=ܲ+     + ++!+**
  330. *˚
  331.     
  332. 
  333. 
  334. 
  335. *
  336. !++!+!+!K!+%L!K%L!K%L!K%l)k-å-l-å1å1¨1å1å-ã1å˝)k-å-ã)j-k)J)J˚%J !**    Í… …® …… …… ……˝ …[ÍÍ K)ç® …© …® …® ®® ®® ® áRJ-$)1E5fJ -E$„5f)£9á)9á5f-%5g9à$„1F5g-%1E)=®=à)=®)1g9á1EJ 9à1f5f5f1E%-%5f))-%5f1E-%¢5fEÍ9á „É1E5fA»$‰$‰)9á1F¢Ç-$1E-$1f$„-%1E5f-5f-$-$˛1E)1E-$-$¬)1E-%)-%1E-%)- „)5f9á5f „√ √1E5g$„-%=®-%$‰=®˛1EF£-%9á-$)-%A… √9à=®9á))-%RL9á9à ‰√5á9á=©EÍ-%J 1F-%-%1FÇÇ5fJ A…N,5g=©-F=©1F5àA…=®5gA EÎA =©A…EÎJ EÍAÍ=©EÍ££1E-$Á+ +
  337.  +!+
  338. *
  339. *˝
  340.      
  341. 
  342. 
  343.     
  344. 
  345. 
  346. 
  347. ++!+!*!K!+!L!+!L!K%L!+!K!K)l)k-l-å1å-å1å1ã1å-k˛-ã'-j-j)j-j)J%J%I%J!)!**!*)!*    
  348. ÈÈ… …® …© …®…… …© ……ÍÈ+!K©®…® ®˝®Má®á ®1D5g%b A1F=®5fA…=à5f$„-%)-E1F1F)1E5f1F-%5f9à5f5f1f9áA…£√9á1f)-$5f5f9á9á1E ¬9á-$1F1F1E5f=ߢ5f-%=®) √ √$„)5f)$√=®=®)1F-%) ¬-$-$A…1E1E-%-%a1f%--$-%%9á5g%-$=®$„A»=á$„$„)-$5á1EÇ1FEÈA…-9á5f=à „)1E¢9á √1F9á)-%9áA…9á1F$‰)F
  349. A…9á9á5g-%√9á=®A…AÍ5gA…1%A…AÍJ 1FEÍ1F9à)$N,1F √5f5g9à1F5g5g)%9à-%=©A EÎA EÎA 5à1FN,AÍJ RMA…1F=®¢5f-$%(+˝+6!K+!+*!+
  350. *
  351. *
  352. *
  353. *
  354. *
  355. **!+!+!K!K!L!K%L!L%L!L%l!L%L!K%l)k-å-k-å1å1¨1å1¨1ã1ã-ã1ã-k-k-j-k)j)j%J)K%J!J˝!*    !*    
  356. È˛Íb … …… …… …… …®ÍÈ … !+® …® …® ®® ®® ®á ® ®$‚=©)A…)b)%$„1F-%-%$„$‰-%1F-%A…9á5g5g9á))A 5g1f=à5g9áA…¢9à5g1E1E-%-%1f9á1E=®1E))1F ¬5f9ᢠ„1F1E$‰ „=®1E£5g=® „-$9á1F-%9á) ƒ-$%A®1F-$ˇ1E?1E--$)5fÇ5f=®)Ç1F-$1F5f1%$„¢%)$‰) „Ç£ ‰EÍ1E-%$„-%-%% √5f1E9á9á √ „¢%5f1E√)1F¬1EN 9®1F1F=©-$5áA…=®)-E) √1F5f-%˛A…(=©5g1F-%1fA…)N,J =®J 9àA…)%IÎZè^∞^è=©EÍA J J EÍ5g9á))A»!(+ ++!+*!+*!+
  357. *¸
  358. *˛
  359.     *
  360. !+!+!K!+%K!K%L!L˛%L!L%L!K%L%K)l)k-l-k˛1å"1ã1ã-k-ã-j-k-j-k)J-k)j)k%J)J!*%J!*%J!*!*    
  361. ÈÍÈÍÈÍ … …® …® …®˛ …®+Í®® »˝®᮲á® ¡˛9áE5f5g-%-%%A…¢A…5f-%=®5f9á$‰9áN,J R,-%A…9á5á-%9à5f9à „5gJ 1F%EÍ9á-E1E „9á5gEÍ-%1F9á$„1E5f$„-%$‰EÍ1E „5f)$„)$„ a9f9á1F1E9áÇ5f5f$„5f1F9á5f`1%1E1E-$1E √ „1E=®$„5f √)$)A®1E-E-%1F)9á5f5f% ƒ √1E-$-$1E9á5g-$)1E1F=®£1FJ -E-%)9á9áA…EÍ1FA…-%-%9á=®1F£ √1FEÍ5fEÍEÎ=®=©A…5g)$‰5g1FRM)%=®N,5á-%-%A N,EÍ5g=…√1g9àJ =…-F=©A EÎA…A…=©=® „))J˛+!,˝!+!!*!+*!+
  362. *
  363. *
  364. *
  365. !+*!+!+%L!K%L!L%l%L%l%L%l%L%l%L%L%K)l)k-å-l-å˛1å1ã-k1ã-k1ã-k-ã˛-k-ã-k)k%J%K˝%Jl!**
  366. 
  367. ÍÍÈ
  368. ÈÍ ® …… …® …® …® …Í©® …® ®® ®® ®á ®á à á5d-$% „5f-%N+ √9áIÎ=®¢ ‰-%9àA…1F=®Ç)-%=®-%¢9á5f=à1F9á5f5á √1FA…ƒ√9à √=®5f b=®-E-$-$1E1F9á1F9á9á-%A…9á5f5f1%-E-%)9Ü)-$%9á9á$„9á5f1F-%1E5f5g
  369. 9Ü$„-%=®1E) A1E9á-%$„9f¢√)=®F
  370. )$„5f1E5f9áA…9á-%1E)$ „1E=®5f-$1E)1E))-$9áE…¢=®)1E-$5fb5fA…1E-%=®VnA…9á1F5g5g-5f9àEÍ)9®5áA…A…$‰)-F$‰EÍ5f9àA©9àN,N,AÍJ EÎ-&N-=©EÎN,A =…AÍ=©A…5á5f9á¢%)+ +
  371. +!+!+
  372. !+*+
  373. 
  374. 
  375. 
  376. 
  377. *
  378. !+
  379. !+!+!L!+%L!L%l%L%l%L%l%L%l%L%L!K%L%K)l)k-l-k1å-ã1ã-k-k-j-k-j-k)j-k-k-ã-k-k)J)K˝%J!*!*
  380. 
  381. ÍÍ…Í…È…È®©® …˛® …˛® ®˝®áà¸á® ·=®1F9á1E£%) √A…5fA©1F1E5áA…1f=®=® √A…)$5g˛=®/5g5gA…=à5g=®¬J A…))1f¢EÍ5f √$„1F-%)1EA…1E √ √5f)$1E-%-$9á9g=®5fÇA…1E£9á=®$„Ç£A®1F$„5á=®A»Ç5e9á „5f1f) √ „£$‰=á)√Ç5fA®Ç1E=®¢√£=ß1E5f9á9á)1E1f-%))1E1E%1F-%9à-$£)$)%5f-% ƒ9à-E))=®5á9àEÍ-$A…9®5á9à=©=®)9à5f=©EÍ9àA…1F)1fEÍ1F-E-%=®A F A…N,A =©EÍb—=©J 5gF AÍ9à1f)%)I+!,+!++!++!++!+*+
  382. +
  383. !+*!+!+!K!K!L!K%L!L%l%L)l%l)m%l˛)l%l)l%l)l)l-å-ã-å1å-å-k1ã-k-ã-j˝-kw-ã-k-ã)j)k%J)K%J)K%J%K!*!+*
  384. Í
  385. È
  386. È
  387. È …® …® …® …® …® …® ®® ®® ®á ®á®á ® á=Ü$„=à-E=à9á-%5á$„ „-%J 5g)$£$‰9á5f=®9á1f$‰=…EÍ9àA…1FA…A…5á9á1%)%1F9àJ =®5g √9áEÍ-%9à1E5f¢-%1F5á1E9á%1E9á5f)Ç=®5f5f5g√=®-$£)$=®1F£5f=®Ç9á5fa5f¢¢√$„)=®5f¢=ß „1f9á1f ¬)¬9á5f)=®9á%1Ea9á5f „ „ √))-$1Fb-%A…$‰)-$5f1F-$5f5á5f1F=©)-%A…1F$„=©1FN,EÎ5f1fJ 5g1f-E9á=®=©A…1FA…)J N,1F9á1E5á9à5á=…A A 9à=©VnEÎ1F-&RMEÍ9àN-1F5f5g5f-$(‚-˛+!+
  388. ++!+
  389. +*+
  390. ++!+*˝!K
  391. %L%K%l%L%l%l)m%L)l)l)å˛)l    )å)k-å-l-å-å1å-k-ã-j˛-k)j˛-k-j-k)j)k%J%J!J%K!*%K!*!K!*+
  392. 
  393. È
  394. ÈÍÈÈ » …˛® »˛®»˝®á®áà¸á     á5DA…A…9à-$A… ¬J
  395. A…˛)=9á9à1E1F9á=®1F5á=©9á¬√A…9á)EÍ)1f5áEÍ5g5gA…5g1E9á¢$‰A…A…-%9á5f)5fA…9á-%5fb5á5g)1E1E) √)1F1E ¬)1E1EA…5f))1F √ „ √%5fA… „1E√9á-$√1E-$¢-$1F$‰ „É √$‰√ „)9á5F √-%1E%))1E1f9á1% √%1f1E¢%5f5f1E1F5f9á-%9áA…9á1f9à=®=®) „-%=® ‰$‰9á=®)9á1f£9á1F1F)%5gA…1FA…J =©A…AÍA =©1gA RMJ EÎJ =…EÎF -FJ EÎ)%£-$`N!++!L!+!K+!++!++!++!++!++!L!K%L!K%l%L%l%l)m)l)m)l)ç)å-ç-å-ç-å1ç¸-å1å1ã1å-ã-ã-k-ã)j)k)j-k)k-k)k-k)k%K!J%K!J%K%J%k!K%K**Í
  396. È
  397. È
  398. ÈÈ® …® …® »® …® ®® ®® ®á ®á®á ®á® á=¶-$£5f%1E))5g9à)1fEÍ9á=®A…1F1F5áA…IÎ5á=®5g1f5á9à√=©EÍ)%%=©$„5g1E9à9á)b√=à5á1f=®1E£-$√$„%$„1E9á5f9á „-$A…-%1E9á-%)5f „=®=à-$£$‰=®EÍ „¯c=á1E9á5f-%Ç1$9á-%1E9á1Fa)9á1E1E-$5f1F)1E¢-%5f£9á5f-$-$-% „IÍ=á¢1E ¬Ç$‰-%a1E5F9á1E1F)5f5f9à9à)$)-%5f=®5g5fA…5g9áA…1F-%-%9á-$=®9à=®-E5gA…=®=®Vn=®EÎEÍF N,1g „A J RMA EÎEÎJ 9®=©=®1E5f1E,+!K˛+!+˛+!+˛+!++!K!+!L!K%L%L%l%L)l)l-ç)å-ç-å1≠-å1≠-å1¨-å1å˛-å˛1å#-k1ã-k-ã-k-k)j-k)k)k)K)k%J)k!J!J*!*!*!K!+!K!**
  399. 
  400. È
  401. ÈÍÈÈ… …® …˘®ᮯáJ ®1D5g-%%-%9g9á1f-%A…1F1FEÍ1f5áA…1F9à)$√1F9à=©=®9á=©9á-%1f=®1F=®=®1F%1F)RM=®)-%-%9á9á1F9à5f5g5f9á9á5fÇ1EÇ „1Eb5g=®5F9á)5á √Ç-%1E5f1%1F5g9á9ád)5f5f-$-%5e£√=®9á5gEÍ1F$„))5f9á1E5f)1E5fÇ-% √5f9á5f5f5g¢)9á „A»1E)5gA®-$1E5f1E9á5f1F5g1f9á9à9á5g9à9à9á9®¢=®=®=à9á5áEÍ5g-%1FJ A…9á1F5gÇF 1F)5g=®EÎ=®N,RMRM „RMEÎEÎJ EÎEÎA 9à9á) ‰A»%K+!L+!+˛+!++!K!+!++!L+!L!L%L!L%l!L%l%l)ç)å˙1≠1ç1≠1å1≠1å1≠˛1å1¨1å1å1ã5¨1ã1ã-ã1å-ã-k)k)k%K)k%K%K!*!**!+!+!K!+!K**
  402. 
  403. Í
  404. È
  405. ÈÈ… …® »® …® ®® ®® ®á ®á®á ®á®á ®áVk9á1F1EJ 5á1f1F9áÅA… ‰%-%9à5f1f=àN,EÍb=®9à1EEÍ9á=©5f-%5g-%-EJ A…=®-%-%1FN,=®9á=®1F=®-%1f9à)EÍ1E=®=®1EÇ9áA®1F)5g=®5f1F)1E-%1E5f-$5fb)9á9à1E˙n))$„))9á-$-$%£¢1E=® „5f=®1F „1E9á$„¢=®EÈ5f-% √)1E1E$„-$Ç5g)$√Ç5f5f9á-%9á1F1E)1E1E5g1f-%1EEÎ-%9àEÍ9á1f1E „9á1E5f9à9àJ 5g)=®N =®5g5g1E √=®9à=®=©)9©N,EÎ=®N-)=…5g9àA…EÎA =®1F5fA)$)M+!+++ ++!++!K!+!L+˛!L!K!L!L%l%L)å-å1ç1ç˛1≠1ç˛1≠1å1≠1≠5≠1¨1¨1å1¨˛1å˝5¨5Õ5¨1å-ã-k%J%K!J%K!*!*
  406. !+
  407. +*!K!**
  408. 
  409. È
  410. È
  411. ÈÈ… …®»˚®á®áà¯áJ ®IÈN,1F1%5áJ 1f5f5g1F¢9à5g=®1F√1f9à5f=…=®Ç-%%)9á9à=®5g1f1F¢9á1F9à-%5f-%%9á1E5g9à1F5f)5f-%)1f¬1FA…1F5á-%5f£ „9g1F-E-$1F „)=®-%9á √)-$-$1Fd$‰ √-$ „5f ¬-%-$$‰-$) √9á$„$‰-$5á)b5fA…)$-%¢5f5f)5g9á¢=®=à1F$„1E1E=® aÇ „$‰Ç1EJ 9à)$1F=®1E5áA…9á=®¢9á-$EÍA 1F)5fA…9®¢1fA©-F „=®A…J 9à=®A A A…9àRMJ -%1F1F=©ZèA ^∞N,A EÍA =©A…5á „5f ¬$„%'!L+!L˛+'!L+!L!+!L!K!L!L%l!L%l!L%m%l)ç-å1Æ1≠5≠5≠9Œ5Õ5≠1≠5Œ5≠5Œ5≠5Œ5≠5≠1¨1≠1¨5≠5¨9Õ5¨9Õ9¨˛9Õ5¨1¨-ã)l˛%K !K*!+*!+*!K!*!K!*!*
  412. ˛
  413. dÍÍ…È … …® …® »® ®® ®ß ®á®á ®á ®á ®ß ®»°5gEÍ)$„=®=®EÍ9á9àA…5gAÍ1FJ EÍ ‰ „$‰9áVm1FJ 5g5g9à=®9àEÍ9á5á=©9á1FJ =®5f1F1F%=®9á9àA…=®5f9®9á5g=®1FÇ1F1F9à5f-%5f√)5f9á)$A©9á)-E1E1F=à „)5f)a=®9f=áEÍ ¬5f$„$‰$„9Ü1E))-%) „-%5f √-%5g9á¢5f1E9à-%√J 5f)1E9áEÍ-$-$1E „%A…5f „1F-E=®EÍ=®9á)=®¢A…J 5g%1F9á=®EÍ1F-%√5áEÍ √%J 1F9®9à=®EÍA… √AÍRM5g=©=©A RMN,9à1G)%A©VèN-A…A =®5á9á „Ç1E)ʸ+%!++!++!L!+!L!L%L!L%L!L%l%L)l)å-ç-å1≠1≠5Œ5≠5Œ5Œ9Œ5Õ5Œ5Õ5Œ1≠5≠1¨1¨1å1¨5¨9Õ9¨¸9Õ5≠9Õ1å1å)k)k%J%K%J%K!*!K*!+*!+!*!J
  414. *
  415. 
  416. È… … …… …» …®»˝®Wß®á®á®á®á®á®® …A»))N 1EA…9á9à5áA…Ç9®A 1F1F=®9à=®9á1F-$ „5fN,=®=®9á5g9áA…)$-E=®9à5fA…9á5áA…E…=®5g5f9á=®9á1F „=®5fA…5g√1F-%$„1f5f5á5f5á$„5f=®5g=®1E √-%A…=®5fA»A…b)£b5f1E √9á-%1E „))$-$1E-%¢=®%1F9á1E5á=®=®9á1EA…¢%9áÉ£Ç1E5f „5f))=®1F1E√1E9à √1E5g-%)=®9à5g-E-%¢)%)5f1E-%)%1f9à1E5gA… √EÍ£1fR,1F9àJ -%1FEÎ%J EÎEÎ9®N,=©A…N-J,9à9àEÍ5f-% √-$1EÂ!L˛+F!++!+!+!L!L%L!L%m!L%l!L%l%l)l)l-ç-ç1≠1≠9Œ5Œ9Œ9Œ9Ó9Œ9Ó9Œ9Œ5Õ5Œ1≠5≠1¨1¨5¨5Õ5≠9Õ9Õ=Ó=Œ=Ó9Õ9Œ5Õ5≠1å-å)k)k%K)k%K%k%K%K!J!K!*%K!J!K* 
  417. Í …Í … È˝ …® …˛® ®˛® ®˛®O ®® ®® … …1FA…9à=®A…%J ¢9àRM)%)5g √-%9á)=®5g-E9àA…5g1EJ A…1E-EEÍ9à5g1F9àA©1E=®5á1E=®√ „)9à5g9à-%9à=®EÍ1FEÍ=®$‰1f5á1F5g5g5á1f%=®=®$„-$1E5á) B%)£Ç5f „ √ √A…9á-E-$5f)5fAÈ)-%¢N+1F$„-E$„1f5g)˛1FK5f1F5f¢-$1E)) √ „5f1E√5E$„ √)¢9á=®1F √N EÍ √5g-%1ERM9à-E$„RL9á%-E5fA©J )9á$„A©-%1f9à-%1FEÍ9à ‰J F N 9à5gRMA A N,1g1g=®J =© „9á1E£1D √$‚++ ˝+!L+!L!L%L!L%L!L%l%L)l%l)ç)l-ç1ç5≠5Õ9Œ9Œ=Ô9Œ9Ó9Œ9Œ5Õ9Œ5≠5Õ˛1¨ 5≠5¨9Õ9Õ9Œ9Õ=Ó9Õ9Œ9Õ9Õ5¨1¨-ã-ã)k-k%K)k%J%K!J%K!*!+!*!K!*!*
  418. Í…Í˝ …» …®…˘®ß˛®Oß®®… » …=©1E5á)9à5g5f=®)9àJ 5á√A…=®F 1F-%5f1E5f9á%)-EE 1F$„=àA… „=…)$5g)%√9à9á=®EÍ=©1F1F=®5á „9®9á-EÅ$„9á%1E)-$1F1F5f) ‰EÍ5f)$„-$5f1E „% √)=®g5f)£$„1E1F)1E)9á5f1E-% „√A…1E)$‰9á=à1F¬5f=®5f5f9á=®9á-%-$1F-$)-$5g)-%1E9á-%-$-%)1E9á1F=®9à9à%EÍ5f$„1fA…5g-%=®=®)£5áA…5f1F „9à)$J )5áF 5á-%9àA…-FN,N,N N,9àEÎ=©9à1FJ 9á1F-%=®1F$„ √)N,+,+!++˝!LH%m!L%l%L%m%l)m)l-ç)å-ç-ç5Æ5Æ9Œ9Œ=Ô9Ó=Ó9Œ9Ó=Ó=Ó9Õ9Œ5≠5Õ5¨5≠5¨9Õ9Õ9Œ9Œ=Ó9Õ=Ó9Œ=Ó9Õ5Õ5¨1¨-ã-ã)k)k%K)k%K%K!J%K!*!K!*%K!*+ÍÍÈÍ …È … …» …® »® »˛® »˛®: »®»® … …ÍÍ=á=©9á-E%5g-%A $‰1FEÎ5g-%-%9à$„J A…=®5g1F5g9à5á)A…9à-%1FEÍAÍ1E1F5gA…1f5g)1F=®=à=©A…5g=®A…-%1F5g1E9á˛5f5g1F=®1F1f1F9á$„$„1F5g5f1E¬=®A…5f-$$‰-$h1E-%)%1EA»1F√$„9á=®)9á-%5g5g1F=»)£9á1f1f%-%5g1F5f1F1%5f9á1F5f-$-%) „)9á5f5f√A…%5gA©=®¢$„1F-%%√=®9á$„-%-%5g9àJ 1EÇ5f9áN,=®1F9á1F5á5á5g9áA…9®)1F1g=©EÎEÍF =…A 5á9à%=©J -%A…-% „)$·N+++++L+˚!L%l!L%l)l-ç)å-ç-å1≠1≠5Œ5Œ=Ô9Œ9Ó9Œ9Ó9Œ9Ó9Õ9Õ5≠9Õ5¨9Õ5¨9Õ5Õ=Ó=Œ˛=Ó9Õ=Ó9Õ9Õ5¨5¨1¨1å-ã-ã)k)k%J%K!J!K˛!*!K!**
  419. Í…Í …È˝ …®»®»˛®»˛®»®»® … »È    !)¢=©9àRMA…9à1F-%1F5g-%1F=®5á √%-%5g˛9á41f=®A…=®$„=®J )EÍ1F9à=®9à9á5g-%9á1fA…5f9á5á9á5f5á9á-%5á9®-%5f-$5f=® „1F9à1E1E1f1F1E „1EEÍ1F9á-$-%5f5f-$1E)5f1FÇ5gA®5fÇ-%5g9á-$1E1F=®1E9á1F=®¢=®A…5áEÍ=®1E5f)1F9áEÍ1F-$1E1F1E „)1F=®-%1E=®)$)=®9à1E5á5fA…5g5gA…A…5g1f-$5g)£$‰5f „5f=à=…-$EÍ1F9áN,9à1F-%A…VNEÍEÍ=©A A…A EÎ=©=©9à9®5g1F-%5g√1E$„1E5CML+,+!L,!L!L!m!L!l!L%m!L%l%l-ç-å-≠-ç1≠1≠9Œ5Œ9Ó9Œ9Ó9Œ9Ó9Œ=Ó9Õ9Œ5Õ9Õ5≠9Õ5Õ9Õ9Õ9Ó9Œ=Ó9ÓB=Ó=Ô9Œ=Ì9Õ5Õ5¨5¨1¨1å)k-å)k)k!K%K!*!K!*!K!+!+
  420.  ÍÍ…Í …È … È … …» …» »® …® »® »® …»ÈÈ
  421. 
  422. !K-j1FA…A…EÍ1f9à1F1FRM9à1f$‰A…N A 5g9á=®9à1F9à)9à1EA…1F1f%5f√5á1FEÎJ 9á9à5g-%A…)=©=©A…9áAÈ1f9á9à=®=®1F9àJ $„5gA…9àA…5g1E1F¬A…1F-%% √£9á1E$„5f5f¢    g-$)-%)Ç-$-$-%√)1F1E))$1E √1E5g=®9à¢5f5f%1EEÍ1F5fÇ √=®9®-$)-$%=®5f=®5fA…√5á5f=®-%1F9à5f5f9á1F „9à5f5g5gA…-$9á5á1E=àA…Å%-%A…=®AÍ√)N,9àA…ÇA…9à9àEÍA…J =©=©EÍ=®5g%-%1E$„EÍ-$ „ „ ¬†N ++,+L¯!L%l)l-ç-å1≠1å5Õ5Õ9Œ9Œ9Ó9Œ9Ó5Õ9Œ9Õ9Œ5≠9Õ5≠9Õ5≠9Õ9Õ9Ó9Œ=Ó9Ó=Ó9Ó˛=Ó#5≠9Õ5¨5Õ1å1¨-k-å)k)k%J%K*!*!*!K*!+* ÍÍÈÍ …È …… … …» …®»®»˛®#»®»»È…
  423. 
  424. !K%J1ãEÍ √1F5gEÍ=®=®√-%N,9á=®a9á-$5f9á5á=®1E5g=®-%)√˛-%-J -%-%-E1F5gA…EÍEÍ$„N,9à)9à=®5gEÎ9á5g5f1F5g1f)-%-$)% „$‰$‰%E… „-E5f-%1E „) „1E1E-$1E)s-%1%1E)1E1E-%1%%¢1F$‰A…)√) „√5fA…√ „1F9á5g5g9áJ
  425. A…$‰¢9á=®=à1E$„ „ „)%9á)5f1F1EEÍ=®9á5fEÍAÍ5á=®1F1EÇA®1F5áEÍA…1f-$√5f1E-%9à9à=®5g-% √5á5g9®5g9àZè=©5gEÎA…5g9àN,=©EÍ=©EÍ%A…9áA…)1E1$ !n, ,+L,!LL!M!L!m!L!l!L%m!L)ç)å˝1≠9Œ9Œ9Ó9Œ=Ó9Œ5Œ5≠9Õ5Õ9Õ5Õ9Õ5Õ9Õ9Õ˛=Ó9Ó>9Ó=Ó9Œ=Ó9Õ9Ì5Õ9Õ5≠1¨-å-å)k-å)k%k!K!K*!K!*!K++
  426. ¸Í …Í … È˝ …Z® …® »® »® … …ÈÈ
  427. 
  428. !K!K)l%(9à1f5á=®9á=®1f-E$‰A…5f5g1F)%Vn5f1f=®1f)A…R,=®A EÍA…)EÍEÍA…1FA…EÍ √%1fEÍ-%$‰E 9à5á9á5f%9àA…=®5g1F=®)EÍ=à)=®9á √EÍ √%Ç1E1F9á$‰9áA…1E1E1f-$1E1Eh-EÈ-$))A…1E5f-%-$$„$‰ AA…5fA®5f5á9à-%5g1f)% „A…=®1E „1fJ )1E1F1F1E1F5f9á)%1E9áA =©9á=®1FÇ1FEÍJ 5f1F9á=àA…=® √ √1%1E5g1F-%=®1EA…J 5gEÍ5gA…=®1E)J 1F „)%J RN5g-%1F%-%5f-%AÍ=®Ç5f$„1E)1E5C- , ,,!L+˛!LL˝!L:!l%l)ç-å-≠-å1≠1≠5Œ5Õ9Œ5Õ9Õ5≠5Õ5¨9Õ5¨9Õ5¨9Õ9Õ=Ó9Œ9Ó9Ó=Ô9Ó=Ó9Ó=Ó=Ó9Œ9Õ9Õ5Õ5≠1å-å)k-k)k)k%J!K!***!K!*!+
  429. 
  430. ÍÍ…Í…È˝ …]» …» …®»®»® … »È…
  431. 
  432. !+!+)k)å9™5gEÍ5gAÍEÍ5gA…5g9áAÍ))EÍ-%¢$‰EÍN )$‰$„$‰-$5g5fN 9à¢5f1E9á5fA…A…5g5á5gRM=®9à1F9á=…5á$„=©9á=©=®1f5á1E1F%AÍ=®5f √5gA…1EA»$„¢¢£1E-%9á¬1EEÍ)1Ej¬¢=Ü9f9f-$1F5f=®)=®5f9á-R+9f5f=à-%=®R,9áA…)%N+)% „1E£-$%A…-%)%1EA…=®1f¢5á1E1F9áEÎE… √ √5E1EN 5f9Ü(„IÍ1E5f=®1F-%F =©$„$‰-%√1F5fA…EÍ=®1F9à1FEÍN,=©9à9àJ RM9á-E1F=©5á-%N,A…Ç$‰¢$„¢$·-, ,,%L%K%L!L%L˛!L!M!L%m!L%m)l-ç-å˝1≠75Õ5Õ9Œ5Õ9Õ5≠9Õ5≠9Õ5Õ9Õ9Õ=Ó9Ó=Ô9Ó=Ô=Ó=Ô9Ó=Ó9Ó=Ó9Õ=Ó9Õ9Õ5≠5≠-ã-å)k)l)k)k%J)k!J%K%J%K!**
  433. 
  434. 
  435. ÍÈÍÈÍ …È … … »˛ …X® …»……ÍÈÍ
  436. !+!K)l)k1≠J J )1F1f%1f1F=®=®-E5g1F5f=®EÎ)1F1EJ J 5g%-%9à5f-%J A…£1F)-%-%5gA…J -%5f=©5gEÎ=®VmA…=©1E=©5f5áEÍ=®5g1f-%$„¢=á=á9f5f1E1$EÈ5á-%$„1E¢9á5f£ ‰=à9á@19e5D=f5E9f5f1E)5g=áEÈN $„-$E»9f=á-%1F9à1F5f=®¬5f1F$„=®1F-$1F)=àJ 1f5f%=®=®1F5g5f5g1F-%R,9fZmE…1$)=ÜA®9ÜR,5E9f9f=á=®1E)1f9à˛-%!5F ‰9á9á-%J =…EÍA =© √EÍA =©%EÍ=®1F5g)%A…9à5g9áA©5f ¬$„%,+,K%L˛%K)l%K)l!L!LL!L!L!l!L%l)l)å)å-å)å-¨-å1¨1¨5≠1¨5¨1¨5¨5¨9Õ9Õ¸9Óx9Œ=Ó9Õ9Œ9Õ9Œ9Õ9Œ9Õ9Õ5¨9Õ1¨1å)k-ã)k1ã-j-k)J)J%J%J!)!*!)!*    )ÈÍ …È …È …È … …» …» … »……ÍÈÍ
  437. ++%L)k1¨1å-h9à=®1F9à5g9®)9à-% „=à9àA…=®-%Ç=»=©5g-%A…9à-%1F √=©1F9á=®N,EÎ5f9á1F)A 9à9à=©9à)√5áRM9á5g=©=®)%1F5g1F-%IÍ-9f9f5E=á9f5D$‚˛9á „¢ √-%%5f)1E{9D=ÖA¶AÜ9e=Ü5E9f=®)5DEß-MÈ5E5EIÈ5DAß5E5f)1%1EA…5g%EÍ-$-$EÍ1E$‰ A9á9á5g5á-E9á9á9à-E9àAÍ1%A®19fR+ZM=ÜE»E»=eIÈAßEßN
  438. Aá9f=á-%9á=®EÍ5á5f)%9à1E=®1F)=©AÍN,J 5áÇEÍ=à5f1F9à=©5g$‰=® √1F1F-%-%-$$„!),,!L-å1å1å-k-l-k1å-l-å%l%l!L%l!L%l!L%m)l)å)l)å)å-å-å˝1¨5≠5¨5Õ5≠9Ó9Ó=Ô=Ó=Ô9Ó9Ó9Œ9Ó9Õ9Õ5Õ9Ó9Õ9Œ9Õ9Õ5¨5Õ1å1å1ã˛5¨K1ã1ã-j-j)J-j)J)j)J-j%I%J    
  439. ÈÍÈÈ …È …È …ÈÈÍÈÍÍ
  440. 
  441. L!K%l%l-å1¨5≠-H=©J N,=®=®)%A…1E=©) ‰1FEÍEÍA…)%Ç=©1E-%5f1f9à1E)5g$‰5gA…5g=®9à=®9à9á)%9®˛9à!A…9à$‰-EA…-%J EÍA…1f%5f9à5fJ
  442. E»15D9e1$9e=Ü5DÇ5f)5g5f-%$„$„1E1F-$RIΔIΔRIΔA•E«I«A¶IË5DEßIÈ5$AÜ=eVJZJAÖR*IÈ˛=®W5f1f1F)1F¢)$=®1f5g √9á5f9à9àEÍEÍ=®1FA…=áAßAáMÈ1#AÜMÈR+IΔQËMÁMÁE•MÁRNE«IËA«)√5f1f5á9á9á=®=©A…-%)$‰1F=®J  ‰5gR,EÍA…1f5gA…1E9à=®9á)√))1E!,!K-å5å5≠5å5å1å1å=ÃAÌ=Ã9Ã1´)å˛!L%l!L%l%L%l%l)l)l-å-ã-å-ã1å1å5¨1¨5Õ5Õ˛9Ó9Œ9Œ5Õ9Œ5≠5Õ5≠9Õ5¨9Õ5≠9Õ1¨1¨1å1¨1å9¨9¨=Õ9¨9¨1ã-k5ä˝=ÀhAÀ=´=À5ä1â)h)ÈÈ …È…È…È…È
  443. 
  444. È
  445.  !KK%l%l)å-å1å1¨5™ „$‰5g9á9á=®5gEÎEÎEÍ$‰ „$„-%5gJ  „5áEÎA…5f5g5gA…-%9àA…EÍ5f-%1F9à9á=®5gEÍ-EA…J =®5áA 5á1f9à)$„9à9áA…-$-%A…-=f=eAßAÜI«EßI«MÁIÁA¶1#5e-$ √)9á1E)5f1F5RMƒV^(^IMÂMÊV(E•MÁI»=eI«MËR    Z(^HZ(RA≈=Ö5e9à9à-%5f9àA…$‰=®1f=®)9®9á5gA…5g9à9á=©=©)5gJ
  446. R+MÈMËZM5DE¶VZHQÊ˛Z(Q≈VVV(NEÁA«EÈ-E5f1f5f1F9à9á=®EÍ=®9á5à-F)%1F‰%$9®1g9á=©=®)5g9á-%A A…-$A…°!L!L-å5å9≠9≠=Õ9≠9≠N R,J JFAÌ5´%l!L%l!L%l!L%m%l)l%l)å)k-å-ã1å-å5≠1¨9Õ5Õ9Ó9Œ9Ó=Ó9Ó5Œ9Œ5≠5Õ1≠5Õ1¨5Õ5¨5Õ1¨1¨1å1¨1å5≠9¨AÕ=Õ=Õ9¨1kAÀJ EÍEÎEÎIÎEÍIÎEÀEÎAÀ9 -i     …ÍÈ
  447.     
  448. ÈÍ
  449. !+
  450. +T+!L!L%l)l-å-å1¨1¨5Õ5ä=©EÍ=©5á9à=®=®9à=®A…=®1f9à-F% „= £)9à9á9áEÍ=®1F1F5f%J E 5áJ -%N,A 5g1g-%J F 1f9àA…9á9à5f1FA…9á=®√1FIÍ9e9EE«A¶AÜEßIΔVVV'V)IÁA¶1E9á1E1E$„¬9á9ác’÷{’’{µ{¥fÕRRMΔAÖMÈAÖI«o{¥{’{µfÓR)EΔA¶%)-%5á9á9á5f √¢9à1F „J =®A…=©%IÎN,A…A 5f5ER+R
  451. I»N    E«o{¥{µ÷{’’{’÷{’’oEΔIÁRJ1E)9á9áAÍ5f1F9à1F5á=®5FAeEeMcM#QPÑ@√IÜ9Ü9à5á-E1F=®-%√1F$„A»)&!L)l-k5≠˛9≠    AŒfœ{ì‘‘kJB =Ï)k˝!L,%l!K%l%K)l%k)l)k-å-ã1å1¨5≠1≠5Œ5Õ9Œ5Õ9Ó9Õ5Œ5≠5≠1¨1¨1å1¨1¨1≠1¨1¨-ã1å-k1å5¨=Õ=¨=Õ9¨5åVéwì‘’˚‘!o1J-9 9™!(ÍÈ
  452. 
  453. *ÈÍÍ
  454. *!K+!L+!L!L)l)k-å-å1≠1≠=ÃZé9à9áEÎ9áAͲ1F@1g9®A®AÜQÁUÑ]•YÑaÁId=D9g%5g5g5á9á5f) „5g)N 1g-%RMJ 5gEÍ-%1F5gA A 9à9à1F-%5g √J =®5f1EAß=fE«=e=DRsP{’÷wsjÓRR(=ܬ-$5f-E)a-$j{¥{î{¥{ì{¥{ì{¥f¨bHZ(RI«R    {¥{ìwì{¥{ì{îo0V(VJEÈ9á)5fÇ1f1FA…1F)1fJ =©EÍ1fRM9à5áA…J EÍ9áI…AßAÜAáR
  455. {¥{ìwì{¥{ì{¥{ì{¥{î{¥{ì{îsQ^I=ÑA®5f9à)J
  456. =®=®9á=©E…4„9#EÖEdMΔIÑMDM#Q$P„bHfiIÈ-F9áN,Zé5áA…-$1D!L%l-l1≠9≠=Œ9≠9çwr{ì{ì{≥˛{ìN-B1å%L!L!L%l!L%l%L%l%l)l)k-å-å1å1å5Õ5≠5Œ5≠5Œ5Õ9Œ5Õ9Œ5Õ5Õ1¨1≠1¨1¨-å1≠1å1¨-å-å)k-å1å9Õ9¨=Õ=¨5åoR{≥wì¥{ì{¥{ì{¥{ì{¥{ì{≥¥AÀ=À)J    
  457. 
  458. !J
  459. 
  460. 
  461. ++%K%K%l!L%l!L%l%L)å)l1≠1å5Õ5´)A…9à9à5fEÍAÍ=®9à5@Ñ@„IDMdUÁQ•^(bHaÁ]Öa¶a•9á9®1F=®RMN,9àJ 1F=®J  √9à9®-%J J 1fA…A…EÍ9à9à=®9àA…-% √))5EEßAßEßMÈZJµwì{¥{î{¥wìf¨V(A¶)1E1E=® ¬ √-$Z(bi^'bH^(bjwì˜YÂQÊQÁI•wswìsPjäV^I{ì{ìR9dE»=á1E9à1f-$$„%9á5á-%-%%$‰=©)%9à-%1F=®A…5fIÈMÈAÜ9esQwìwq^iRbjZIbHbibHUÊ^Iwr{îVE¶=ÜIÈ=®-%9à1F1F9à0É0¢4‚AdAdEÖI•MΔM•MCL§QUÑb(nHYÖÇ))% „5á-%a%l%K-å5¨9Õ9≠9≠g{ìwíj≠ZMR-sr{≥ZmF1å)l%K!LK!L!K%l%K%k%k)å)k-å-å1¨/1¨5Õ5≠5Õ5≠5Õ1≠5Õ1¨5≠1¨1¨-ã-å-å1¨-å-å)k%k%k)k-k1¨5å9¨9¨9≠Vn{ì{ìfÕJ N,N,V,V,^LV,R sR{ìbŒAÀ%)!)    *˛
  462. Z+*!K%k)l%K%l%K%l!K)l%L)å)k-å1å9Ã-%9áAÍ9à-EEÍ1f=©9C=<„@§@ÉI#MCQDUΔ^bHf(aÁnäjYÁ-FÇ)) √A…5g£9à5gA…1F-%1F5g5fA…9à1fJ 5gJ A©1F9á-%1FN+9f1#MË=eMË{¥wìsObH^(^j{ìo0R5D5E1$9á5f=®1E-$MΔUÊbIZbIfä{î{’^'ZVf´{ì{îjâ^(bIbI{¥wìZIE«1#-1E5f=®1FA…9®=®9áEÍ5gJ EÎ=©1F1FJ =©J R,5fAßIËV+ZI{¥wìbäZIMÁ=dZJ^JbJ^(fjZ(wìwíZ(E¶Eß=á-%5gEÍA…=®,Ç0‚0‚9=D=#ADI•MΔMÖMCPƒQ$]Δbff(mÊJ
  463. 1g1f1FA®5f ‚)ç-å9Õ9≠=ŒN-{¥{ìj≠^MZNR ¥{ìZéAÌ5≠-k)l!K!L!K%l%K)l%k)å)k-å-å1¨1¨1≠1≠5Õ5Õ5Œ1≠1≠˝1¨˛-å,1¨-å-å)l!L+!K%K-å5¨9Õ9¨=≠EÏwìwìjÌJ =Ã=ÀEÏIÏR R V,R ws{ìbÆ= )I!)!J*
  464. 
  465. ++%K%l)å%l)å)l)å˛)l    )å)l)å)l-å-åA»9®A…-%˛=®B5"9#8‚A#<£D§D§MDMDUd^fInjr¨rãr´rijAÍVn1F5g=©EÍ))=®9áA…9à5f)=®9á5á)9à9à5gJ =®9à))N
  466. N
  467. 9E=eAÖ^ä{ìwPfhZ^(j¨wìoMÊI«(„-$9á „)1F¬ M«QÁVZVnÌwìnÃbI^)ZjÕwìs/^(^)ZjÃwìsQV(MËEß=Ü1$5FA…)5g=à1fEÍ5g1F-FN,=®1FA…5á-%N,5fE»IÈI»E•b¨{îwqRMËIËMË9#MΔUÁQΔVfãwîsQVAÜ(‚N
  468. 5E) „√,Ç,c,¢55=D=#AAIdMΔMDL§PƒUdjãj    vÌvÏzä=®EÍ¢A…=®-$)l5¨5≠9ÕAÌVnwìwìZ,V.V.béwì{ìR,AÕ1å-å%K%LK%L!K%l%K)l%k)å)å-å-å1≠-¨˛1≠1¨1¨˘-å-ã-å)å)l˛+)%K)k5¨9¨=≠=ÃN,{ì{ìJ 9´-j5ã9ãAÃEÃIÏIÏV,wr‘E 9´%)%*!)*
  469. 
  470. 
  471. +%K)å%l)l)l)å)k-å)å)å%k˛)lK)ã-å-H$‰F 5g ‰-0·54¬8É8É<Ñ@√D‰H„MDQdYÖ]¶iÈn    r
  472. v´vÃvÀiÊ5©1F=®)N,=©5f5g5f5g9á=©5g-%1f1F1F¢-%J %-%=®1F$„9fE®I»=eE•o0{îf´UÊQΔb(nÓ{ìf´Z)EßAß-¬5f5f9g-$E•I¶M«M«Vs0{¥j´^(Zfãs0{¥fä^I^*bIwQ{¥j¨ZJIËA®=Ü5F1E ‰9á√)EÍ9®A…A…1FA…9®A 5g=©-%J 9fR+AÜR
  473. ZJo0{¥jÓRI»I«QËV*=CRMΔVsP{îoZ)MË5E=áJ
  474. J
  475. A…0√0¬,b0√19#=DAd=AA#QΔMÑQ$P‰]ΔnÃvŒ/zåvÕv´)%5g√-$9f5ä5≠=Œ9≠J.bœ{ìoZNRZNjœ{ìs1N9¨5¨-k)l!K%l!L%l%K)l)l)å)å-å-å1≠-å1≠1¨1≠1¨1≠˛-å1¨˝-å&)å-å)å)å!K,+,!K-å5å9≠9¨EÌZé{¥wrF 1ä1k1ã=´=´AÃ=¨IÏZl{ìsQJ 1j)J%I%J*+
  476. ++˛)å)l˝-åQ-¨-å)å%k)l%l-å-å1¨)=®RMN,,Ç0É0¬4£4É<√@„E#EIDM#QDU$aßn
  477. zÆzŒzÆ{zÃv´Y¶5á5g5g-%5á9®9á1f5g5f-%=®9à=®1f=®=®-%$‰9á)=®1E5f1$5D9DMËV’{ìj¨bIM•^’wì^HRI»AÜ=Ü5E$„)-%1EAdM«I¶VUÂ{¥wìbHVM•^'{ìwrbi^IbIbH{ì{ì^HV)AÖAßE®9f5E% „=®1F%5g5áA…A…EÎEÍ=®A©9àN,9á=ÜEßIËI»V(wswìV(I«EßIËI«R    M«QÈIΔQÊ{¥wìbäQÁEßAá1$¢9á1$0¢,¬0¢,¢0‚5"=C8‚=AE#EDQΔIQ$YÖj*våzÆzzÔzÏfã5g9f=®1$E«5Æ9≠=ŒEÏwrwìfœV-RZ,sRwìbéN9≠1å-k)k%l!K%L%K)l)k)å)k-å-å-¨-å-¨:-å1¨-å1¨-å-å)å-å)ã-å)å-å)k-å)k)l%k!K +*%K1ã9¨5å9¨EÏo1{ìf=À-k-j5ã5ã9ã5ä9´IÏfŒwìjÔIÎ5ã-I-J%J!J
  478. ++%l)l)å)l)å)å1¨)å˛-å)k)l)k˛-åI)lEÍ1F ‰,Ç,b,b0É0b8√<„A@„D„ICMDL„UDaËrlvØ{z{vÃrE…EÍ=®=®J )EÍEÍ9áJ,9á5á=®1F5g1F5g=®9à)=®=®5fA®=Ü=ÜIËR    ^äwì{¥QƒUÊUÊfiwî{¥VAÖ=eAÜ5D9f ¬1E-$5fE¶5DI«MÁbi{¥wrbHUÁ^)fä{¥wrUÊQÊZfi{ìwrUÂRQËI«I»1$=á=®A…EÍ=©=©A…A»=®=®J E…A»EÍ=á=áVLR
  479. I»MÈR    ^j{¥{ìZIN    1=e=dIËEßI»MÁbjwì{¥^(VI¶MÈI…9f√50¬0‚0¬0¬0‚9D9#==AAIdQΔMDL‰YÖeÈvçz2zzåv´=á9ÜIÈ5D9g9≠=Õ=ÌVM{ì‘^MV.V.bM{ì{¥ZMN9≠5≠1å)l%k%l%k-l-k1å1å5¨5¨5≠1¨5≠1¨1≠-å1≠-å-å)å-å)å-å)å-å)l-å-å1å)k%K!J!K!+%K-k5¨˛9¨!N-sr¥RL=Ã-j1k1k5ã-j1k5ãIÎ¥{¥^çJ 9ã9´1ã1ã)J!K+%l)l-å)å-≠-å-¨1å1≠-å˛1¨N1å1¨1å5¨1å-å9àRM(„0£(B,É0Ç4„8‚<√=A#@„H‰H„LƒPƒ]árlvMzÒt{zÏrjvÀE…=á9gJ
  480. =á)5f)$‰=®)EÍA…J EÍ$„A…9á9á √5EE»9DMÈA¶9eRfÕ{ìo^'VbIo{îsPQÊE•EÖ=e9D=Ü5e)9f){AÜAÜ5#Z)sQ{ìo^'QΔZs0{ìo^(QÊb(s{ìo^HQËM«I¶E¶=ÜAß5E1E-%)5gN E…IÍE…9fR+^èIÈAßE®AßMÈMÈAßRb¨{ìo0ZIZLR
  481. =e-AÜAÜ5$V)f¨wìs0^'QÁE¶MÈR+1$$‚1110¬,¬0‚158‚==AI•MÖI#MP„]Erlz–{S{0z¨V*9f9e=e9ä9≠9≠FZé{¥wrV-RZ.fé{¥wrZMEÌ=Õ5¨1å)K)k)k-k-k1å1å5¨5¨9Õ˛5≠5Õ5¨1¨)å)å)k)å)k-å)k)å)k-å-k1å-k1ã%J)K%J%J)j1ã5ã5å1ã=ÃEÎ{ìwrF 5ã-k-j-j)J)J)I9´N {¥{≥V+IÏAÃ=¨9¨1ã1ã)k)l%l)å)å-å-å1¨-å1¨-å5≠5¨5≠5å5¨5¨9Õ5å1å-åEÎ=®,¬,¬,É,¢0¬0¬8„8‚==ED√D§IP‰P„n
  482. vLvn{S¥v≠{ränMËJ
  483. 9f=á=á9eE»1EA…=®9á)9áEÍ=®)Ç=ß9f5E1$E»=e9D1EßV(sQwìbiQÊM•^wQwîjãVM«EÖAÖA¶9e=Ü5E-E»Aß=ÜE¶Z)wr{¥biZ^(^({ì{îj´Z(Z^'{ì{ìj¨QÊQÁQΔMΔEßMË=Ü1D5fA…A…-$9eR+E®E»=ÜIÈIÈVLIËV+MËI»MÈMÈIΔsQ{¥bãIΔR
  484. N    ^éEß1=ÜAßE•o/wìf´Z(QÁM«MËAÜ$„,¬1#15#0‚0‚0¬558„8„AAIÖMΔQ•QÑUÜYEi»vM~Ò{S1v¨~À1EZKAÖAÀ=Õ=ÕJfwìjV-RZNo{ìsV-NEŒ=Õ1å-å-k1å1ã1å5å9≠9Õ=Ó=Œ=Ó=Õ=Ó=Õ9Õ5¨1¨˝)å)k)å%l)å1ã˛1å--k-k)J-k1k5å5ã5¨5ã5¨=Ã^Æ{ìsREÏ1ã-j-k)J)J%J-j=À^éwìwrR NIÏIÌAÕAÕ9¨9Õ1å1¨)å-å-å1¨1¨1≠1¨5≠9Õ=Œ˛=ÕMAÓ9Õ9≠5¨1≠=ß9á,¢0¬0¢0‚,¬0√4‚8„8√A@„D‰D£L‰LƒU$]fqÍv,2{zÆzÌn(n(b=á=ÜZmMÈI»Aß9e-)EÍ) „$„√A…=®)E»AßEß9DR
  485. AÜ9d9CRwì{¥biZ(VbHwí{îZZ(M•QÁM«RI«A¶5$9fAßAß=fA¶RwrwìZ(ZVjâwìµUÂQÁZ(fiwì’UÂ^(^(bIZMΔIΔRE¶VKJE«R+=f5DAß5DAÜI»^lZJRV)V)RIΔRf´{î{¥V(9DAÜ9eAß=ÜE»=fEßMΔ{¥{ìbj^(ZVRV)EÁ,¢,¬0‚110‚1#15#4‚9=#AEdMΔMΔQΔUΔ]ße»m©vmzÒzœvJräEß9eI«F JJVKwr{ì^çNNZ-wR{ìbéZ-V-R-JAÌ9¨5å1ã5å1ã9¨9≠FN.N.JN.JN.FF=Ï9Ã-ã)å%l%l%K)l-k1å1ã1ã1k1k-J9ÀAÀEÏAÀ˝AÏRLsR{ìbÔ9´-k-k)J˛%Ji)JAÀk{ì^çV,V,Z-R R-NJFFAÏ=Ì1¨-å1¨1≠-å5Õ9ÕAŒ=ÕAÌAÕAŒ=ÕEÓFF=ÏE«AÜ0¬10¬,¬0¬0¬4¬0b8£8É<É@√D§D√MLƒUafiàvÆì{/vãjnIe≈J
  486. AáI«R    RRE«EËA«)A…9á5á1f=®IÈE»5$AÜAÜ9D=ÖR    IΔZ(jÀ{¥sQQÊAcQÊ^'{µs0^'^'ZQ≈VV(MÁEΔAÖ=Ö9Ö9Ü9fNZ({ìo0QÊ^(bFwì{ìoM«M«^(bi{¥{îUÂ^(^'b(bIV^IbãZJMÁMÁ^kRI»R
  487. N    V+EßRZ(V(^k^JVZIR^Hwq{ì{í=e9DE»5D1D1$=á9eN    R÷wì^I^(bJVQÊMÊIΔ,Ç0É0¬0‚110‚10‚9#9CAd=#IÖI•IdQΔYÁY¶a»agzmvéz≠n    iÁ9D9dI»N-N VLsP{ì{ìEÓEÓR.Z,{ì{≥VV,ZMZMVMNF5å5¨5å9¨9≠RMR,VMR-VMR-VMR-RMN-N.B9Ã)k)l%l)l-k1å1ã1ã1k1ã1kJ J N,˝J /F J k{ì‘=À-k1k)j)K!*!K!*1kAÎsQ{ìR,R ^L^,^LZ,ZMV-RMRMNNF-B1¨1≠1¨5≠9Õ=ŒAŒAÓAÕAÓAŒRNR,RMJ F E≈=D˛0¬C0√0¢0‚0¬4É4É8É<£A@£IH„L‰QY%j    vlv≠iÁiÁeÊiΔ-AÖMΔVZ(ZIRRNE»9á5g9à5f5E=fE«I»1#R*9eMÊMÊZ(^h{¥{ìjÓAÖI•Z(^{¥s0UÊ^^^^'QÂZ(RMÊRE≈EÍA®I«V(wì{ìwrwrwî{ì{¥R=eE¶V^'{ìwìwì˛wrsrwrsrwrsQjÓVZ(^KI«EßI»N    wQwrwìsRwrwrwssQsrwìwì¥Eß=Ü=e=e=ÜIÍA…1E=áIÁZIo0wìwrwssrwrsrwìZK(b(b,É,Ç0¢,¢0¬0‚15"=d=dAdEÖEdI•QΔUÁU¶Y¶]áaávlrKiËeΔnŒsrwssrwrwrwì≥J.=¨AŒN^Mo{ì{ìwssRoR VMJ=Õ5å5å1lksQwísrwswrwswrwrsRo1FJ-=Ï-å!K!L%K-k-k1k-k1ã-jgsRwrsrwrsrwsKsrwrwr{î≥NN)K1k-J)J!**
  488. *-jF Zéwì{≥wrsrwswrwswrwrsro1N-NNF-9Õ-å1å1¨=Õ=ÕAÓAÌAÓ9≠fsQwísrwrsrwrEß0¬,¬0¢,¢0¬,¬0¬0Ç4£8£<£<É@£@£H‰H„PƒYÖaËj)rårÕeÁaÊa•aÑs1˝wr"srsQVJNE«9f$„A…5f9ÜAáMËI»Eß5$fŒsQwrwr{µwrsR9DIßMΔVZ{¥wìwrsRwrsRwrsR˛wrsrwr-%9ÜR*R(Rwì{ìwr{ìsQEÖAÖI«E¶˛Rwrwìwì{ìwì{ìwì{ìwr{ì{ìfÕZ(Z(MËMÈR*’wì{ìwìwìwr{ìwì{ìwí{ìwrEßI«E«N    E»Aß-1F5f1EE»MËNsR{ìwì{ìwr{ì{ìVK(B0£,b,c,¢0√0¬0‚0‚59D=C=dE•A#IÖM•UÁUÁUÖUeY$]E]aÜeΔnŒwìwr{ìwìwìwrJ.9¨=Õ=ÕN.VMV-sR{ìwì{ìwìsRV,R-=¨9≠9¨”wì{ìwìwìwí{ìwì{ìws{ìwìsrR-F-å%l!K%k-k1ã-j1ã)J{ìwì{ìwìwìwr˛wìwí{ìwíJ.-j1k-j-j)J!J
  489.  
  490. -ä=À=Ào1˛wì9wr{ìwì{ìwì{ìwì{ìR,NN9Õ1≠1¨9Õ9ÕAÓAŒAÓ=≠{ìwì{ìwìwìws{ì{ìE«1"0‚,¢,É0¢0£0¢4„4‚8√8É@√@£DƒD§H§MDUÖYÖfIjjfI]•]$aÑ]do1wìwr{ì˛wì%{î^jR5D5f9á=á9eE»Eß9e-k{ì{îwí{ìwro1=dE¶AÖAÖMΔZ(båwrwì{ìwíwìwr{ìwìwìwr{ìwrA©$„9ÜIËEΔR^iRV(I«=eE¶A¶=eE¶MÁR(MÊZI^iZ'bjfjfjbHZZ({ìsQbIZ(M«QË{≥wrsP^HV(ZIZI^IZI^j^jZII»I»EßAÜ=fAß=ÜA®5g-E1EE»JIÁRV(MÊZ(V(AÉAÖ9D,b,Ç,c,b0¢,¢0¬,Ç,É,¢5#5AdAdACACMΔMΔQÁM#QUDYDYDX‰YCUÁI≈NMN,NMNL=Ã9¨=¨9¨=≠AÌN-R-ZMZM^MZ-{¥{ì^LRAÕ5åo1wì{íZlRMRMZNZM^m^m^nvR {ì{ìR,AÏ1å)K%K%J-k-j1j)IsQwì{íZlN,J N-N,N-N,RMN,=´-j1ã-j-j-I%J    
  491. 
  492.  !I1™=ÀF J RMVLZn^Mbnbm^nV-wì{¥ZmJ9Õ5¨5Õ9¨=Õ=ÕAÓ=≠fwì{îfÃVmVMRMJ -,‚5#,¬0¢,b,¢,¢0¢0¬0É0b8É<‚<É@£D§IQΔU•^(^YeYdY$X‰X‰]#VIZ(V'Z'Z(Z)o0wìbãV)IÈ=Ü=á5e9f=eA¶AÜZk{î{¥f©˛R=Ö=e=eA¶AÖAÖIΔRI≈RZ(Z(QÊZ(QÊZ(V(RV'RcEÍA…-$IÈA¶E«RMËE¶MÈE«5$EßAßI»N    E«E«I«EΔRZ(Z(ZZbHfä{ìsPb(Z(QÁbäwì{í^iRE¶V)RRMÁMËV)AÜ9DV+R
  493. =ÜAÜAß=á ‰EÍA…A…5áJ    R*IËNIΔAÖAÑMË=e9d,B,c,b,É,b0£0¢,c,¢0¬0¬9=D=D=EdECM¶QΔMdMdQdUÑYÖYdY$AeEΔ= AÏ=Ã9Ã5å˝9¨)9ÃAÃJNV-V-^M{≥{¥Z,REÕR,¥{¥^åN-FJN-VNZ-^NZMZ-{ì{¥R,AÌ1ã)k)K)k-j1k1jJ {ì¥ZåJ,=À¸AÏbAÃ5å-j-j-J-j-I)J!*
  494. 
  495.  
  496. *!I1ä5™AÏAÏJNVNZ-^N^NZMwì’ZMJ.=Õ9Õ9¨=Õ=ÕAÓAŒN-wr{¥fÕVnJN.JAÏMÈ=e110¬0√0¬0¬,¬0‚0¬4£4É<„<„@ƒAMÖMÖVQDU•P‰UT‰YXƒ]eEËMÁRZ(Z^Is0{¥^IRAáAá-9eE»MË9DIΔwq{¥fÃbãR=Ö5D˛=eAÜ9d=ÜAΔMËMËIÁRMÁRM«IΔ=dV)MÁE•Re √A…1f%9Ü)-5D1$-5DIÈ9eAß)5f5fAß9E-1"AÖMΔMΔVZs{înÓbIQÊZnÓ{ìfÃblIËIË=eIËE«Eß=Ü9eE®Aß9eE»I»=á9Ü9á¢)9áA…-%-%5fIÍIÈI»=Ö-(‚1#(‚,Ç(b0É(B,Ç(b,c(B,c,¢0¬0¬4‚8‚==EÑI•E#IdMDMCU•U•UdYcAß5E5D-k1ã1ã5ã1ã5å˛1ã1å5åAÕEÌV-fØwìsRZ,IÌNbØ{ìwrJ 9¨=≠=ÕEÓIÓRRV-bé{≥sQR-=Ã1å)J)j)j-j-J9´Vm{ìwrAÎ5ã1ã1ã5ã1ã1ã-j-k)J)J%I%I%)%J    
  497. Í
  498. Í 
  499.  *!K)k5¨9¨AÕEÓRRV.^m{ìwrR,AÌ9Õ9¨9Õ9≠AŒ=ÕFVm{¥wìVMEÌAÓAÕAÓ=¨5#5$0¬11,¬10‚1,·0¬0¬4√4É<„=E#I•QÊIdMdMCP‰PƒUPƒUQ¶IÈI«I«MΔVZ{¥wì$ZHE¶5$5EAß-1E¶R    R{¥wìZ(=Ñ9D5D=e=eAß=e-Aß-1$ ¬1$9e5D9e9eE«AÜ11#IË5D5D7-% „9á-E-%5f5E9eAá9e(„1$E»-=®1E5g)A®E»E»MËE¶VZ(b({¥{îfäbI^JUÂ{¥wì^iV)I»E«IËAÜI»AßAß9e=Ü- √5eE»5E5fA…=®9®-%1E˛5g9àA»A»=Ü5DE®=Ü1D$B,É,Ç,c,Ç0É,b,c,¢0√0¬0√4¬8„9=EdIÖIÑIdMdMDUÊ^(U•jI√5E¬-å-k1ã-k1ã-ã1ã-k-ã-ã1å9¨EÓR sQ{ìjÆV-MÌR s1{ìfÔAÏ5≠9≠AÕEÓJIÓNR-s1{ìoN=Õ1ã-k-j1k-j1kAÀbwì^ØAÎ1å1k1ã1ã-k)J)K%J%J!)!*!)!**
  500. 
  501.  
  502.  
  503.  
  504. ++%k)k5å9¨AÓIÓNV-jÔwìoR-AÓ9¨=Õ=ÕAÓ=ÕAÓRJ.f{≥sRN-AÓ=Õ=Œ=Õ=ÃE«Aß,¢0‚0‚11115#154‚8„8‚A#E•IdEDI$H„M$L‰QdQU$UÑMÍ9Ü9EI«EÖQÊ^H{¥wíbkI«AßIËI»MË1MËI«ZI{ì{ìM≈AÜ=eE«9DE«=Ü1$5e √ A9á1% √1D9eE»-=ÜIÈ5e5D-Aß9eC=®$‰$„5f1F9á5f1E9f9f=ᬠ¬¢¬-%-$-%)5eAßA¶IßIßQÁbiwî{îb'ZZ(^H{¥{¥RAÜEßE«AÜAáN
  505. =á1E1$IÈA®9á--1E5f¢9á)$=®%A…=®9à9à9á1E5f9á-AßE»9E˛,Ç,c(B,b,b,c,¬0¬,¢4‚4‚9#9AdEÑEÑI•IdQΔVQ•bH1D-%Ç-%J)k)J)k)j)k%K)k)k-k1ã5¨AÃR-wr{≥bLV-IÌV-sR{¥N AÌ1å9¨=≠AŒAÕEÓEÓVMwì{¥^mJ9¨5å1ã5ã1j-j1äAÎsR{ìRm=Ã-j1k-j-k%J!J**    *    *    
  506. Í
  507. 
  508. 
  509. 
  510.  
  511.  
  512. ++%K-k5¨9¨AÌIÌV-o0{ìbÆR-=Õ=Õ=≠AÕ=ÕAŒAÌRNsQ{ìbœJ=Õ=Œ=Õ=Õ9ä)5eF5,‚0¬,¬0¬,¢0¬0‚11"4‚4¬=#=#EÖEdEDD√DƒH√MMCQCQ#UÖ1E1$5D9dI¶Zs0{ìoMΔE¶MËMËI«I»AÜ9eIΔfÕ{ìjÌZI1#=ÖAÜ9D(‚-1$)-%)Å-$%-$) ¬)b)=á9f ¬)9Ü-A…1EJ
  513. -%1E5f5f%5f1E9á9Ü1E-$-$)1F „5f1%=ßEß5$E¶ZIjÌ{ìs0^bIbJo{ìwrVR    V+=fI…A®√5fEÍ% √1E˛5ge1f1f9á√=®A…=®-% √A…-%1FA…$„1F¢)5E-$0¢0¬0√,b0£,b,É,b0£,¢0√0¬9C9C=d=DACEÑMΔIÑQΔMdUΔQ¶9à%EÍ=¶!K!J%k%K%k!K%k%K)k-k1å5åEÌV,¥wr^MRRV,{¥srN-9¨1å5å=Õ=≠=Õ9≠JZm{¥wìZMIÌAÕ=¨=¨9ã1ã-j9´F ‘{ìN-5´1ã-j-k%J+
  514. 
  515. ˚
  516. p
  517.  
  518.  
  519. +
  520. +
  521. + K!K)k1ã5¨9¨JR ‘wì^mNEÓEÕEÓEÓAÓ=ÕFN-{ì{ìVMFAŒ=Õ9Õ5Œ5eÇ$„-$0¬0¬0£,b,É,¢0√0‚559#=DAdAÑEÑA#E#D£HƒI#MDM#UÖEe)9f1#R*V*Z{ì{¥fäQÁE¶I¶M«V*I»AÜAÜV{ìwìf¨E•=eAÜEß9f-$1%A®√-%5f9á)1E¢1F5E9á √ √)A…$„=®$„-$9à ¬-%%5f5f-%)¢1f-%-$J =®1E)1F)1E-$-5EI«QÊs0wìjãUÊZZs0{îbäIΔ9e5DAß-5f5f¢=®J A…A…1f1F9á1F9à=®1E-%%=©A…J 1FA…¢-%=®=»=®-$ A9f-$0¬,¬,Ç,¢,¢(B,É,¢0¢,¢0‚5#54‚8„=AA#IÑEI#ICAf$„9á)%K!K*!K!J!K!J%k%K-k1ã5¨EÏjwìs1V,NR fØ{ìo1F 5¨1ã5å1å5å1å9≠EÌ^éwìs1R IÌEÕAÕ=´9´1j-j=À^Æ{ìwrAÎ5ã-j-k%J*
  522. 
  523. ÈÍÈ
  524. È
  525. Í
  526. 
  527. ¯
  528. e*K!J)j-j5¨EÏbØwì{¥V,NIÌIÓEÌEÓ=Õ=ÕAÌVm{ìwrN,EÓ=Œ=Õ5¨-≠=®A®-$b10¬,b,c,B,c,B,¢0¬0‚0¬59C9=AAE#@√D§I#MDIC5f1E-$=f9EAÖ^Iwr{¥ZM≈EÖM«EÖI¶=e=eE¶V({¥µMÊMË1#-1$Aß ¬%=à5f a-$1E1F$„£5e √))1E)-%5FÇ)d9á9áEÍ9á1E%9á9g1E-$„5f1E%=®=®1E9á=®1%1E-$¬=dR{ì{¥bibIQ≈^(wr{ìZIMËE«MÈE»1$A…9á√9á9á5f5fA…=®A…9à9à5f=®=®9á¢A©J A…EÍ-%)9áA…Ç √)¢ „,„10¬0√0¬,c,Ç0É0¬515#4‚4„4¬==EÖA#E#EdEf1g$‰-%)-#!L!J!K!K%k˛!K3)k-k1å9¨N-sR{¥fÆV-NV-wì{ìfœF1å1å1ã1å-k1å5åEÏsQ{ìfœR,IÏIÌEÃAÃ9ã5ã1ãF o1{≥fÔAÏ-k1ã)J!J
  529. 
  530. È
  531. È
  532. Í
  533. Í˝
  534.  ˛
  535. i+
  536.  
  537. +*!K%J-k5ãJk{¥oV,NRNJEÓAÓ=ÕJf{ìo1NN=ŒAÓ9Õ5≠)ç9áa)$„ „,b,É,b,É,b,É,Ç0√0‚0‚0¬8„8‚=#=AA@§ECIDMÖ5$1E=á-$=Ü9DMÁbã{îofk^)Z(VRM«MË=eIΔbã{¥sQIΔ5CMÈ=e=á-%Ç£5f)b)9á9á √ „1E$‰-%Ç$‰5F=®A…=àMb „1E5f-$5f)-$=®EÈ1E) „¢$‰1F¬ ‰A»-$=áAßAßR^j{µwr^(Z'^(fâ{µwrZIE»AßE®E…5F$„$„-%1E5g1E-%%$‰EÈEÍA…=®9à5g=®9à)1FA…EÍ9á √5f1E1f¢-$ „1E$„,‚5,¬0¬,b0£,Ç0¬˝0‚'0¬4√4¬8„AdAC@‚E$1F1E „ √1EÅ!K!J!*!K!J!K!+!K!J-k-k=ÃJ wì{ìR R ZM^k{ì{¥R,5å1å-k-k˛)k5´J {ì{ìVMR V,R R J EÏAÃF R+wí{ìN 1ã1ã-j%J    ͲÈÍÈÍÈ
  538. È
  539. 
  540. 
  541. 
  542. 
  543. 
  544. 
  545. Í˝
  546. >
  547. *%J)J5ãJ sR{ìZ,V,Z-V,V-NN-FJ-Vlwr{ì^ÆAÌ=Œ=Õ9Õ1¨-Æ ¬-E¢-% ¬-$(b,É,b,c,Ç0¢,¢0¬0¢0¬0¢4‚8‚8„8£<£=A#AC=DA…√1%1E5eE«AÑowìnÓ˛^("Z(QÁRRZJV's/wìjÌIÁ=e1#(‚1$5f „9á5f1EÇ9á)Ç%-%9Ü-%-$-%5f√Ç-%5f1E5fÇ£ √5g5f1E¢ „¢5f1E-%$„√$„1E¢£1F9áA®=ÜIΔ^ä{¥wrVbIfâ{î{ìoEßI»Eß=Ü=Ü9á1F)$1F1F-$ √$‰=®√√1F-%9®=©=®1f1F=®1F9à=®=®1F „5f9à1F5f-$5F-$)$0√0‚0¬0É0¢0É,¢0„1"0‚,Ç0√0¬4„4¬Ad9A%5à=®5g)=®-%5d!K!J!K!J!K+!K+!K)J-ã=ÃN,{ì{ìIÏV-^Kwqwìwr1ã1å1å-å)k)l%K)k5´N-{ì‘MÏV,Z,ZLV,R,N,N,RLsPwìwr9¨1å-j)j!)
  548. ˛ÈÍÈ
  549. È
  550. 
  551. 
  552. 
  553. ˙
  554. Í˝
  555. c+!*)j5´N,sR{ìR V-ZL^MZ,VMR-R-VLs/wì{ìFAÓ=Õ=Ó5≠5≠-ã5e-$$„1E-$$„$„0¢0É,Ç,É,Ç0É0¢0√,Ç0£0Ç4É4É8√8‚A#==d9ß5F5g-%-$N
  556. I«R{ì{îZ)Vb(b(bHRMÊR^Io{î¥AÑ9EA¶=Ö(„)9ᣠ„)-$ √1E)-$)-$-%-%-%1E=®-$bÇ)X1F=®5f-$)1F-%-$$„ „$„9áA…5f-$5g1E)5f1f-$1EA®IÁR’wì{îwì{îwrwsEÜIËAÜMÈAß9f1E5fJ $‰EÍ¢=®=®9áVm√EÍ5g5f9á9à1f9á=®=®A =©5á=®9®5g9áÇ9áA…EÈ9á$„-%$‚0¬,¢,¢,b,É,¢110¬,Ç,Ç0¬4‚0·AÖ=߲=®6$„ √-$1$)!J*!J*K*K*!K)j=ÏJ,wswr{ìwr{ìws”=Õ5å1ã1å-k%k+K!J9ÀAÎwswì{ìwswìws{ìwrwìwí{ìws‘=Ã5å1ã-j%))Ë˚Èn
  557. È
  558. 
  559. 
  560.     
  561. 
  562. 
  563. È
  564. È
  565. È
  566. 
  567. 
  568. 
  569. *!*9ÀJ o1wr{≥ws{ìwì{ìwswìwí{ìwì{≥NN=Õ=Õ=Œ9Õ5Õ-å1ä5f9áÇ9áEÈJ
  570. -$ „,‚0¢,Ç,b(b,É(b,b,b0¢0Ç0£4‚54‚EΔ1C-$-%1F1E √(„IËV(^ãwì{îwì{ìwswìwì{ìwswîwì¥^åEß5DE«9D5D ¬5f%)EÈ5f) √)-E-%-$--%1E-$˛5f1F1F)9á)-%9á5g9á5f¢=®1E)√)%-$-%$„A…=®%$‰1E1EA®IËA•^k{ì{ì{¥{ìs0M»I»EßAßEßAßA®9á1F-%1E „ ¬9á)Ç-%=®¢1f1f=®1E9à=®A…-%9áA…A…5g=®=®A…1E£)√=®EÈ-),É0£,Ç,C,b0‚11,¢0£(b0¢I…{¥VIE«-%9®=®5g1E-$-$-GJ!KJ!K*!K*!KK%k9ÀFFwr{ì{¥{ìwrAÕ9¨1å5å-ã-l!KL+!K1™B AÏws{ì{¥{ì{¥{ì{¥{ì{¥{ì{í=Ã5¨5ã5ã-j)I)    È    È
  571. È˛
  572. Í*
  573. *
  574. 
  575. 
  576. 
  577. È
  578. Í
  579. Í˝
  580. (*1äB =ÀoR{ì{¥{ì{¥{ì{¥{ì{¥{ì{ìJ.9≠=Õ=Œ=Õ=Œ1≠1¨-ä5f9á$‰b „¢9á5E√0Ç0√0¬,c,Ç0£0¢0£˛0¬55^åkNR*-$-$5g=à1E1E=ÜR)Ro0{ì{¥{î{¥{ì{¥{î{¥{ì¥N    =e9d=eMÈ=ÜAß)5F)$√5Ü)-%-))-%-%1F-%)$„√EÈ=®))1F-$-)√ ¬=®$„1F-E-%1%-%)1E ¬9á-$1E)Ç9f „)Aß=ÖRV)^IVMÊ=DI«EßI»Eß=Ü1E1E5f1f)-%=à9á9á √1F-%9áA…1F1F9á=®1F9®9à5á=®5g1F=®5g=©=®A©-%)√ „¢A…$„,É,b--$0√,¬0„110‚=e^¨{¥{¥R(IË9á1E1E)5f1EÇ5c+*!J*!J*!K*K!J1™9ÀF F RMRLRM9å5¨5å5å1å1ã%K!K+K+)ä5 AÏ(AÎN,R,VMVLRMR-VMRLRL5ã9¨5ã5ã1j-i!(    È    È    È
  581. È
  582.     
  583.     *
  584. *    
  585. È
  586. È
  587. È
  588. È˝
  589. $%j5™B AÎJ,R,R-R,R-R,RMR,RL=¨9Õ9¨9≠9≠=Õ5¨1¨-å-j9á5f1F)Ç£ÇÇ),b,Ç$„ ¢(¬˛,¬80¬0‚,·bÕ{¥jÓR(N    Aß1E5f-%5á1FA»9dVJMÊV(VVRV(Z(V'QÊV(E•5#5#9D11#5E5E9f¢%¢¢))√ √=®)-$-1F1E5f¬Ç-$1E$„ √b9á)1f1E)Ç9á1F$„-%5f5f1E-%)¢Ç-$1E¢9á-%)-E»9dE«MËRE»IÈE»MËMÈAá9f=®=à=®F
  590. 9á1FÇ=®-%-$1f)%9àEÍ=®1F-%9®5g „5g1F=®9á5f1F5g5g-%N,9à5g5f)A…-1E(c,É1-E)))1$5#9DIΔb¨wì’I≈IËA®=á1E)$„5f¢)%'!K˛!J0!K!J!K*!K%j1´9ÀAÏAÏF9≠1å1ã1å1ã1å)k%k!K!LKK!K-ä5À=ÏAÏFJJFJ-FJ9¨9Ã5¨5¨1ä1ä)I!)    
  591.     
  592.     *˛
  593. U*
  594. *
  595. *
  596. *
  597. 
  598. È
  599. È
  600. 
  601. 
  602. 
  603.  
  604. +*)ä1™9À=ÎFEÏFAÏFFF 5¨9¨5¨9≠5¨9≠5≠1≠-å-≠1ä5f¬A®5f1E$„)9á „,b0É¢ √Ç√ ¬$‚(·19"jÓwìoI≈=Ö5e9f1E5f-%-%9á1DAßNIΔRQÁRMÁIΔRIΔA¶˛AÜ=Ö9d-=Ü √£-$-%-$1E-$ „5f)9á=®1E-$-%5g5f1E%-%)1E9á)1EA…-$%$‰EÍ-$-%1E ¬-E5á1E-E5f-$1F5g5f¢1E-%5g1E=ßAßE»˛Aß<E®5ERLAßIÍ9à-%5f$‰%5f-% √ √9á-%=®1E1E5f-%9à5f)A…=®)-%1F5f5g5gA )$9à5f5g5á%$‰)¬,Ñ,b(„-$-%1E)E»Aá9cRjÓ{ì{¥RMËIÈ=á=á˝1E)%&)!J*!J*!K*!K*!K!K%k)k-ã-k-ã˛)k-k)J%KKK+K+K+%j)j1ã5ã9¨5¨=Õ9¨9¨5¨9¨1ã5´1ä-j)I!)˛    '*)!*)*    *    *    *    *    *    ÈÈ
  605. È
  606. 
  607. 
  608. 
  609. *
  610. +*K!J-k-j1ã1ã5¨1ã5¨-ã1å-ã˛1å1ã-å˛)åJ)ç=Ü „1F1E1E-$Ç√¢0É,Ç$„¢$„ ¬)$‚EßAÖ=cjÓ{ìkRIΔAß=á9f1$5f-$5f-%-$9Ü5D=eE»1#I»I«AÜ1E»=Ü9D9eAÜ5D9e¢ √)1E$„$„9á9á-$-$bÇ%A…-$1E5f5f9á9á √-%=®1E
  611. d-%=®5f-$-$Ç „1E9á1E1E$„1E)$9á „-%1f)$1E5f9á9®A…=©-E9áA®E…A®9Ü=á=á1%=®1f$„1F1E)1E%5f5f))9gEÍ-%5á5g=®1E))9áVM5á-%9á=©=©1FAÍ=©%=®-$5g9á)1f5f(b,É-9á$„9á$‚9e9DE¶ZIowì’QÊR    1$E»IÍA®1E1E-$9d+!J!*!K˛!J˝!K!l!K%l%K)k%K)k%K%k%K!K+,K!KK˝!K%l-ã-ã1ã5¨5¨5≠˛5¨1ã-j-j)I%I    ˛*    !J!*!J)*
  612. *
  613. **!J**
  614. *È
  615. Í˝
  616. c+*++K+K!K)k)k-k-ã1å-ã-å-k-å)k-å)l-å)l)ç)å)å%l9á1E √5f$„1E1E √1e,b,É$„-$)£(„)5D=dE§owìo0RIΔAß)=áIÍ9à1F1E1E5f5fA…-$9e9e5EAßE»5D1$9e=ÜAß1$(„9á=®-A…5f¢-$$„1E=®=®5f1%$‰5á5g √1E1F=®)1F=®5f1Ep)-$1E-$5f1% √-$)$1E)√9á-%5f1E!-A®A…=® √5fA…=®-%9á5f1%9g=®9f5E£Ç£EÍ£¢-%-$1FEÍ5g) ‰5f)$5f9á)J 5fEÍ9á-E%9à$„N,1f5g%N,=©EÍ=©A A 1E!9á9á,É,Ç5$9®-%-%A…9ÜE®AÖQÊfÃwì{¥^IZ*MÈE»9á1E9á-$%-!L!*!J!*!J*!J*!K!J!k!K!l!K!K*˛!K0*+++*K+!K*!K!K!k!K%k)k-å-ã1å-ã1¨-ã-ã)j)I!)!))*)*)!J)!J!)!*    *)*)!J)*    
  617.     
  618. È˛
  619. e    *
  620. **K+K+!K!K%K%K)k)k)å%K%k%K%l!K!K!L!l!L%l%k%l9á1E5f5á5gA…-%A5f0Ç,Ç-$-1E¢ „9f=e=eE§jÕ{ìkRRN    Aá5E-$-E5g5f)=®5f$„-$5E ¬5EÇ=Ü5E1D1$ ¬-=á%Ç¢£¢=®-$)$„√1E5f1E$„ √5f9á1E-$-$5f$„)1F1E5fa-%-$5f1F5g=®1E5E1E$„9áÇ1EEÍ5f)-%1E££-$ „9á-$Ç1FA…A J 5f=®A…=®5f1F9áA…1%1E)9g¬-F=à=®-%-%)5á5f-%-%√J 1E9à5àF 9à „%EÍ)J EÍAÍ9®=©5áA…)%$‰9á0ƒ0£1$=®%9àA®=ÜIÈR    V(jÕwì’I§ZJ1#=á9Ü9á5f1E$„$‚!K˝!J %K!J!K!K%l!K!l!K!l+K+L˚+*KK!KK!l!K%k!K)å)å-å)k)å%k)ã%J%j)!J)!J)!*)!J!)!J!)!J)*)!J*!J**
  621. *    
  622. È
  623. 
  624. *
  625. +
  626. +*K+!KK!KK!K!K!L!K%l!k!LK!LK!LK!l!l%l%k%l%l9á9á9à1F5f)=® √%0Ç0£5F-E1E£5E9e5$I«QÊowìs0Z(E•I«-5E1E1F1E-$1E-$5f1F „-$1F „-%Ç))1E1$-%)1E5E$„1E1F)5fb1E-$%¢-$1E£9à)$‰9á1E5f „1E-$5F-%b-9á1F5f-$%1E √IÍ)-$1Fa9á1E)9á-%)b=®%9á-%A…=®9á1F1E9à-%A…)A©1E)-%A…1f1E „=® „ √9á5g-%9á1E5g)-%-%£ „5g √)&-E9à=®1E1FÇ$‰5g)%9áAÍ=®1F5á4ƒ0¢5E)%=®9á9á=á=ÜMËZ(fÃ{ì{¥VI•MÈ1$$„$‰)=á¢5dK!)˝!J"!K!J%k!K%k!K!LK+++
  627. +
  628. +
  629. +
  630. +
  631. ++KK!K!K%k!K%k%k)å!K!k!J!J˛)*    )    ˝)!J)        !*)*)*    
  632.     
  633. È˛
  634. H
  635. **+*+*K*K+!K+K+!LK!L+L+K+!L!K!l!K%k!J%l¢ „$‰Ç£1E5á1E „4¢0¢)-$¢1E9á1$=Ü=eQÊjÓ{ìo^HRAÜAß- ¬))=® „=®=à9à9á-E¢-%=®1E)˝)-$ ‚-$¬Ç9Ü$„=á √b))1%$„1E1E$„1E1F1E1E-%)1E9á-%1E`£5f%¢ „-%1E£1F-%-%9á=ß-%%%5f9áJ A»$‰1F ‰1E-&=®=®EÍEÎ1F-E=®=® „1F=®9à „5f1E5f1F9á1Eb5f=©A…9á1FEÍ9à9à5f1E))1f1F-%$‰5gAÍ5f=®1F1F-%A…9á1F)=®0√4√1$5á √-%9á9Ü9ER    RnÓws{¥Z(RI»IÈ5EA…%%1Eƒ¸!J&%k!J%k%k%l!K%l!K!L+,++
  636. +*+
  637. +*++KK!K!K%l!k%l!k%å!k!k*!J))    *˛    }))!*)*)*    ***    *    
  638.     
  639. È
  640. 
  641. ****K*K*!K+K+K+L+L+!LKL+L+!L!K!l!K!k!K!K!J-i9á-%$„)%=®5g) „4¬4√1E1f-$Ç-$Aß5DA¶QÁjÓwìoVZIE«Aß=á1EA®)%1F¬9á1F9à=®1F¢5fA…1f-$1E)%5f=®1%)¢5f A-E=à-$-%5g5f5á1F5f-%9á5g1E=®=à „Ç9á ‰ √ A1EEÍ9á1E)1f))9à$„-$¢5f1E¢-$-%)A»=®)EÍ9à-%)Ç-% ‰1F1E$„ √$„ „ „¬A…9á5f-%-%5f1F%9áA…¢1E=®=®-%5á9g9á1FEÍ5á=®=®1F „$‰A…5gJ 5g)-%9á=…A… ¬0√4¬1$1F5g1F=®9fAÜE¶QÁjÌwrwîVMÁ9eN
  642. E…=á1E)√!J!)!J!*!J!J%k!K%k!k%k!K!k!KK*+
  643. +
  644. +
  645. +
  646. +*K+K+!K˝!KKK**        È˛    È    È        )˛    *    
  647.     
  648. È    È
  649. È
  650.     
  651. 
  652. **!J*J*!K˛*K*+¸+K˛+K+˛!K-!*!J!*!J%I5fE…1F „)1E=®-E4¬4¬=®1E5f1E1%=á=eAÖMΔfÕwskZ(MΔAÜ1$E…9áA…-$1E „ „-$1f)-$=®√! √˛-$$„)9á1E √A…1EÇ1E%1E-%1E-$Ç=®9á-$1E)5g)1E5g5fb9áIÍ5f1F)-%1E5g$„1F)5g)-$$„ „9á-%%-%)$b1EJ 1E-$˛5g9á-%1F5F√5f9à9à=®A…$‰¢1E)1f-%A…1F$‰1F9á9á5á9àAÈ¢ ‰9à1F$‰A…9à=…A N,=…$‰5á-$9á=…-%1F1FA…5gAÍ4‰4„1$9á=®)$IÍIÍI»ZJ^If¨sr{¥^(VAÜN
  653. =á5f-$-$$„!(!)!J!J%J!J%k%k)k%k%å%k%l%k!l++ +*+
  654. +*++K+K+!L!K!k!K%l!K!K**        È    ÈÈËÈÈ                
  655.     
  656.     
  657.     
  658.     
  659. È
  660. È
  661.     
  662. 
  663. **J*!KJ˛!K*˛K+K+++˚+QK+!K!J!K*!K!J)j)5f5f)-$1EA…-F4‚4„))1F9á(„J
  664. E®MËZ)owroV^kAÖ9eAß1E1F5f5f1E-$ √ √)1f5f5FJ
  665. -%)9á ‰%5f$„5fÇ9á1f1E)5f1F9áÇ5fA…-%=à1F1f1E5f=®√1fJ 1F-E-%5f    1E√9á˛1EU9á-%9á5f$„)%1F=®1f%=® ‚1E1E9á1F5f=®=®-%-EA…J )$-%)1EÅ1F1E1E¬-%5g-$1E9à √9á9á-%$„)9á9à1F „=®-%9áA…5f-%5g5á „9á5f9á1FEÍ5f5f9á$„A…94‚9f1f-%¢-$5E=ÜRMΔjÌsrsìZ(MÁ9D1$$„˛1E-!!J)!J!J%k!J˙%k+!KK*+
  666. +
  667. +
  668. + ++++KJ!K!K%k!K!K**        ÈÈ ËÈ »È »ÈËÈËÈÈ
  669. È    È    ˛ÈE
  670. È
  671.     
  672.     *
  673. *)**J*J*K*K++++++
  674. +++++***!J*!J*%j%k5f5f-$9á-%)9á¢=4‚-$5f1E)¢1$9EAÖVbÕsrfÓ^HV)AÜ--$„5f1f˝1F&)Ç%-$Ç-%=ßÅ-EA»$„-$Ç-$£¢ B%-$ √%)£)$√$„=®1F „-$9á9à1FaA»1E)%=®5g1E˛)_ „=®1F)1E1E=®=®5fÇ1f5f$„1F9á √5f1E1f-%√J 1f%=®¢N,)$ √ √ „)5f1F$‰-$5f)9á=®1f$‰=®-$1F1f1f1EN,$„1F)5f$„1E)$„J 9á- √))9á=®)-$1E£995E-%-%%1%1$1$AÖMΔfÃsqw¥QÂ^kMÈ=Ü5f)-$1$1E%H!)!J!J˝%kN)å%k)å%k)å%k!kKK*+
  675. +*++++++KK!K!K%l!K!K**                ÈÈ »È »È »ÈÈ    È
  676. 
  677. 
  678. È
  679. È
  680. È
  681. 
  682. 
  683.     
  684. 
  685. *
  686. ****J*J*K*K+K+++++K˝+
  687. +***˝!JI)å%$„%9á1E√)-E8‚9 „9á)1E)5e1$9dI≈jÓsrjÓQÊIΔV*IÈ9Ü5f-1f-$1E1F1%-$1E¢$„5E£%-√b-$-$1E-%%-$1$£-$£)%=à5g)1% „£9á-$-E1F-%5g% √9g)5g5f    -%9á1E-E¢$‰=® „¢b-%=®1E1% „-$1E)5f5f%1F-E1E%¬9á)√1Fb˛5f)-%1f1F1E-$¢1F1F1E5f% √5g˛1E
  688. -%)=à1E1F$„5f1F1E)$‰˛9á#-%Ç5f1F1FEÍ%9á=%8‚Aá1EA…EÍ5f9fE»I«Vf¨sQsìVI¶AßA®9á1E-%))!'!J!I%j%J˝%k)å%k)å%k%k!K!K*+
  689. +
  690. + +
  691. +*+*K*!KJ!K*)˝    &»Ë» »» » » Ë »ÈÈ
  692. È
  693.     
  694. È
  695. È
  696. È
  697.     
  698.     
  699.     *    *)J)****+*¸+Y*++K++
  700. 
  701.     
  702.     *)!J!J%k%k1f-$¢1E5g1EA… √=9Ç5f%1FEÍ9e9eI«VfÌsrjÓZ'I≈9D5D=Ü5f1E1E5f-%1E1E5f1F)-$$„1E))-$)$„1E-$)Ç=®1f5f-$5f „E…EÍ5g1E5f5f9á5f1f5f9á-E%=©5f=®5f9às5f1E5g1E5fÇ)5f1F$„ ‰¢)%$‰=®√%EÍ1f)EÍ=®5f)$‰$‰ „)J -$5f9à9á9á-$A…1F9á)-%=®5g5f5f1F9á1E9á5f1F1F$‰9à9à1F9á=®9á$„9à1E=àAÈ=®=®5f¢% √) „ „9=-Ç=®5g5f-=eMËVfÃoQwìVM«IËI…=á1E) √1E%H%J)k)j)ã)ä)ã)ã)å)ã-å%k%l%k%l!KK*+*˝++*+*K*˛K )*        È    ÈÈ »Ë »Ë »˝È
  703.     
  704.     
  705.     
  706. È˝
  707. \*
  708. *)*)**!J*!K*!K+K+K+K+K+K+K+K*+
  709. *
  710. **!J!J)k%k)å1f9á-$Ç)%)√A=#5f „b9á5g5e-AÜQÁjÓoQo^HR=eE®9f1E-$1E √=®1E1E$„)1E1E-$√-$1%$„1E1E-%5f1E¬-%-%9á-%5f˛ √9á-%$„9á1F1fA…1F=®=®$‰5á9à5g9á1Fd-$-%1E-$5f=®-$1F))=®1E √1E1E$„$„√ „=à1F)5fIÍ5f))5f)=®%$„1E%¬9á$„1F1E1E5f √-$5g)1E9á1E-%9á1f-%=®9á1E1E-%5g-%A…=®1E a)9á5f9áA…5f1F$„=®1E=9=f) „1E=á5e9EE¶VfÕoQorZ'MÁAÜAá=á1E1F)1D%')j%j)ã)ä˛-ã)ã)å)k˛%k!K!K++
  711. ˛+
  712. +*+˛* K**    
  713.         ÈÈ»Ë »˲ » Ë »ÈÈ
  714.     
  715. 
  716. 
  717.     
  718.     
  719.     
  720. 
  721. *    *)*)*)!J)!J!J!K*!K+K++++*++K++**    
  722.     *)!J!J%k!J%k%k5e-$9á9á1E-$$„F ==1E=® „¢9á=ß9e9dM≈bÕoQk^IVE¶1$9f1%$„-$)9á-$1E9á √Ç1EJ
  723. )5f „%5f)1E5f1E „)1F1E5á1E1E)5g1F5f1E$‰-%1E)1F=®=®1F)5f9á=à1F35á)1E-E$„-%))J )$‰-%1F$‰)-$1E)-&5f1F-$5f1E=®EÍ1F)Ç √-%9á=®-%1E1E-%1E1E$„1E-%)1E)$)A…1fEÍA…1f$‰˛=®99g-%¢-%9á-%9á1E)=®5fÇA…RM9á√-%9à=A$1$5g1E5f5f-$MÈMËQÁfÕo1srZV)I»9e1$=á5f1E¢!)ä-ã-ä1´-ã1¨-ã-¨)ã)ã%k%ã%k!kKK˚+
  724. +*+*K**    
  725.         È    ËÈ »˲ »Ë ËÈÈ
  726. 
  727. ˛*
  728. *    *
  729. ¸*)!J!I!J)˛!J %j!k!K%k!K!k!K!KKK+K+˛K(**
  730. 
  731.     **J!J%k!K%k%k)j9á1E¢E…J 5g¢1gAA$5f9á5f-%5F=á1$MËI≈fÌoQfÓZ'RMËE»5e˝1E)$‰Ç-$=®1f$„£√5f))5g9á%-%1E-%$„J -% „1EA…1EA…1E5f9á5g5g5f-%5á5g%-%=©A…9à1EA =©p))$-$=á-$EÍ)Ç ¬-$1E-$EÍ5f1E-%√-%5f)5f-E$„1E √1E%)- B=áÇ-$9á-A…9á1E5f1E)$„-%J 9à$„%5f¢ „5á=®¢-%9áJ 1f5fa=à)1E1%5á)1E√Ç$‰5áA…$„%A$A#5D1E)=ßE…9eEßR    V(bão0oRZ(MÁEß=Ü1E A%-$-$)H)ä-ä1´1´1¨1ã-¨-ã-ã)ã)ã%k%k!JK*˛+
  732. *
  733. *
  734. *
  735. ˛*
  736.         ËÈË    ËË » »«˝ »ÈÈ
  737.     ˛*y    
  738. 
  739. *    
  740.     *    *)*)*)!J)!J!J!k!J!k!K%k!K!kKK+K+K++**    
  741.     *    *J!JJ!K!k%k)j5f1E%Ç)1E=®ÅEDA#9g1f9á √5fIÈAßE«VbÕo1fÓ^HQÁE¶=ÜE»5fb-$1E1E)¢!=ß5f)% „EÈ££9áEÈ-$)$-$ √% √=®¢$„-$)-%9á1FA©5g)5g5f9á5f)=®5f1F-E5gAÍc%A…-%¢)9á1E-$1E „1EÇ1E5f1E-%£1E1F-$5f£ ‰=® b1FEÍ1F1E££5f „b$‰ √-$5f%1FJ  √-E5fJ 1E%%EÍ√√£)-%b1E9á$‰1F1E1E-$5g5g-%%EÈ1f-%¢-%9á5gA$E$Aá5á)b-$=á=fE¶QÁfÃk0orVREß=f5f1E¢b¬-h-ä1´1´˛1¨-ã-´-ã1´-ã-ã%k%kKK++*+
  742. *
  743. *
  744. ˛*    
  745. È    È    ËË˙ »ÈÈ
  746. 
  747. **+**
  748. *
  749. *    ˛*)**J)!J*!J!J!k!K%k!k%l!k!k!K!l˝K
  750. +K
  751. *
  752. 
  753.     ***J˛%kL!k)å)å-ã1f1FEÍ=®-% „))E$ED$„A…5f$‰b9ÜAßI«M≈fÕk0fÓZ'RE¶=e9f=®9á$„Ç))$1E-%-%)%% „ b1DÇÇb9á5f))1F¢9g5f9á1E$‰1F5f$„=à1F9à9á1F1EJ %5f1E1FN,-%£    [)5f=»√Ç5EA…A…¬5f=à √ „)-% „-$1E „$„ „1E √)¢¢1fA»9g-$)-$%%√)-$%)$1F5fA…$„ √5g9á¢1EA…9á)) √=®5f-%5f)-$1F-$-%-$ „1F9á)-$%9á-$1E-$A$E#1-%5ea9Ü=f1#E¶Vb´k0kQZ'M«E«=á5E˛-$$„%'1´-ã1¨1´1¨1´1¨-ã1´-ã-ã)ã-ã%kK*+˝
  754.     
  755.     
  756.     
  757. È    ÈÈ ËÈ˝ »
  758. « »» » »ÈÈ
  759.     
  760. 
  761. ˛*
  762. *
  763. *
  764. *    *    *    ))*)!J!J!K!J!k!K!kK!K˚K[+K
  765. 
  766.     
  767.     *    **!K!J%k%k)å%k5Õ1´9á=®-% „1FA…1F1FE$A$1%)5g1EÇAß=f5#QÊbÕk0bÕ^HRAÜ5D5E-$-%1%5f)¢ √)Ç √-% ¬1f)$$„-$) „¢1F1E „)-%aE…=®$„ √=®=®$„A…$‰1f9á£-% „5g-%$‰5f=®EÎ$‰`%5f5fA»√¢%=ß)-%A…9á)¢9á=®√)1F1E9á)5f5g9á1E=à √=®5g)9áA…1F1E9á1F1EÇ5f1E√9à-1E-%9á5f9á$„5f1E%√-E%√A…5f-$5f1E%-%-%Ç √))$ „-E-%-EA$ED=e1f1f5F$‚ √N
  768. R    Vf¨k0kQ^IV)A¶Aá5e-$¬1$5f)˛1¨5Ã1¨1¨-ã1´1´1¨-´1¨-ã)ã!kK**˘
  769. È
  770. ÈÈËÈ ËË˙ »*ÈÈ
  771. 
  772. *
  773. +*+*+**
  774. *
  775. *
  776. *)*    **J!J!K!K%k!K!kK!KKL+KK!LKK*+˛
  777. U****!k!k)å)ã1¨-¨5Ì>F0-$ √ „1F)%1E1F1fI$EDA»=®1F5g5E(„$‚R    QÁfÕk0fÕV^kAÜ9E1$5f)$„5f9á-$% ‚A» √1F=®1f-%-$ÇA…A»√-%J
  778. 1E-$)-%-$1E1F-%¢%1E)-%5g5g)%1F9á=®EÍ)%-%=®A A…o)$„¢¢=®-%Ç√¢-%1E9á9á-$-$5f)1E=à)$„-% „-%¢9á1EÇ$„9á=à9á1E5f5f%9á9®)$)-% ‰%))$-$ „£ √ „E…A©=®-$1E √¢5f9á=®)1F5g1f-%5f9g1E)$-$5f1F1EE$ED=f1F9á-%-$5DI»R    ^Ib´k0kQZ'V)I»=Ü9f1E „a5e`9Ó1´1¨-ã1´-ã-ã)ã-ã-ã1´-ã-ã)ã%k˝
  779. È
  780. È
  781.     
  782. È    ÈÈ ËÈ˝ »/ « »» » »ÈÈ
  783.     
  784. 
  785. *
  786. *
  787. +
  788. *
  789. *    
  790.     *    
  791.     *    **!JJ!k!K!kKK+K*K+K*K**˝
  792. U    **K!K%k)ã1¨1Ã9Ó>JPNq1f=®A…1E1F1FA©1fIDED$„9á1F5f-$=áAßMËVbÕk0bÕVRMË=e5E1$9á „£9á√=®1f)Ç$„-$%9g-$√ „√5f$„=®5f1E5f)-%1F-%A…9á9á5f%5fA…EÍJ A  ¬5gN,)-%)$ „ „a ‰A…9á)%1F5f1f5fÇÇ-$-$√1E5f-$$„9á=®5f) √√ „Ç√)5fÇ1E √))1E%$‰-$¢A…=®1F-%-$9á=® √5fE…5f√-% „1E5f √5f1E1E5f√)1E √-$9g5f)-%A»)$-%1FEDMe1%A®9á1E-$-(‚AÖ^Ib¨gkQQÂAÑ9eV+5E%-)$¢$‚1Õ˛1´-ã-´˛-ã-´-ã-´-ã)ã!K*
  793. *    
  794.     
  795.     
  796. È    ÈÈËÈ Ë Ë » ˲ » Ë ËÈÈ
  797. 
  798. *
  799. +*+*+*+
  800. +
  801. *    ˛*    ****J*!KK!lKK+K+K+K+K*+
  802. *
  803. ˝*SKK%å)å5Õ9Ì>>B0JPRì5gA…=®-%-%E…1F1gIDIe5F1F9á5f1E9f9e5CI•fÕgfÓZ'IΔ5#9eN
  804. 1E%5F1E$„1E%-%$„-$É)5f-$)9á9á%-%Ç£-%5g1E1E-%1E5áEÍ=®=®)=©A % ‰A…A…1F-%A…%5gEÍA…-%˝\ „)5f)1E)$9á1E)1E$„√-%)$%£b)%$‰5f=®9Ü-%1$)$1EÇ1E-¬¢A…5f1E1E)-%9á$„)$-%-%5F-%-$1F√ AA»1f)5g%¢EÍ ¬1E)1F5f¢$„1E-$5f5f√5Ü9á1E-$-%IEMD)¬1E¢1E5e1#E¶M≈Zjgg0UÊMÁ=e9e9Ü)˛¢ ‰1¨-ä1´-ã-ã)ä-ã)ä-ã-ä-ã)ã)ã%j!J    
  805. È    È
  806. È    È    ËÈËÈ˝ »«˝ »ÈÈ
  807.     *
  808. *
  809. +*+
  810. *
  811. *
  812. 
  813.     
  814. ˛    
  815. 
  816.     ****K+K*K˚+*+
  817. *˙
  818. KJ%k)ã1Ã9ÌBBF0F/NQNqF1E=à „˛9áA-FMeID$„ √)-¢5f=ÜAÖQÁ^¨gbÕZ(IΔE¶1$5E1E)¢%√ √ „1E-%1E)% „$„ÇǬ%5f5Ü1E)-%1F „)A© ‰√-$=®1E-$%1f√Ç=®-%1F-%=®)5f9à)85f5g5f5f%)-$ √1F9áA…5f9á=®%)$„-$√% ‰)9á1%¢5f=®5f9á) „=®$„bA…9á√1E5g9áAÍ=®-%-E5f1E5f √-%√-%$„-%J
  819. %$‰-$˝1EC5f9á1E5f-$5f-% B √1E=®-%IEQe5D1E9á=®)5e=eE¶Vb¨cg1Z(R=Ü1D=ß-$ √)Ç)H-ã1´-ã1´-ä)ã)j)ã)ã-ã)ã-ã%j!k*
  820.         È
  821.     
  822. È    È    ËÈË Ë » ˲ » Ë ËÈÈ
  823. *+*K++*˛+*+**˝
  824. r    
  825.     *
  826. **K+K+K+K+K+K+K*+**
  827. *
  828. *
  829. +!K-¨5Õ9Ó9ÓB/B/FPJPJQNqRíVì1E9à1F A%1FAÍMDMe=á9á9á1f9á1$=ÜE¶QÊbÕcbÕV^IE¶5E$¬9Ü% „1E$‰ √1E1E5f „$‰A»1E-%1F))% „1E)=®5f-E5f% „ √EÈ5f5g9à9à5fA…=®))9à9àRM9à9à=©=®=®A1F1E5f-$))$A…£%1E%%)=®))-%1E „ √)√$„$„-$¢ √Ç¢√5f=à-$-%¬%-$5fÇ „5f-%1F1E „A»5g1F5f5F-%)Ç-%-$-$-%)1%9á$„$„1E1E-%1F˛1E2¢b √ „IEMe1$ „)5f9á9e=eI«Z(b´cg0VREßE»A®$„%-$)!'-ä)ä-ã)ä)ä%j)j%j)j)j)ã%j!J)    È    È    È    ÈÈ˛ËÈ » Ë « » « » «Ë »ÈÈ
  830.     **K*K*+*+
  831. *    
  832.     
  833. È        
  834.     
  835.     *    **+*+*+*+*+*+**
  836. *    
  837.     
  838.     JJ-å9Õ=Ó>B/B/FPJPJQJQNqRqVí5f=®9á5ÜÇ£¬UfMe9á%-%%5f9fAáAÖV^¨cb¨VIΔI«9e=á5f „$„9á1%¢9á1F1E1%a-$-9g5f1E)-$1E1F-% √-$1EA…=®-%1F=®1E$„=®=®9à-EJ 5f9á1E)√˛9à=©5g1E-$)=®5f5f-%5f5f1EÉ-$5f5f=®-$5f)9á$„£5f1E9á1E$‰%-5f√ „-%1F1f1f¬A…)√)9á1F5g-$Ç5f1E5g-%)$1F1E-$%-%)1f-E√A…9á-$-%)-$-$1E-%%A…9á1E-$MEQf9E1E-%$„5EAßAÜI«V(b¨cg0QÂAÑAÜA»9Ü)1E b))ä)ä)ã%j)j%j)k%j%j%J%k!JJ)    È    È    È    È    ËÈ Ë    ËË »Ë »Ë «ËË        ****K+K+K+K*+**
  839. *    
  840.     ˛
  841.     *
  842. **+*+*˛+^*K++*+**
  843. *
  844. *
  845. !K-ã5Ã=ÌB/BF/F0JQJPNqJQNqRqV≥=©1F9á9á-$N,9á-FQeQÜ$„5g5f1E √=ÜAßE«Rb¨cbÕZ(IΔ1=Ü9fA»5f5g √=®Ç9á9á „=®A…9á)¢5f)%EÍ=®1E1F¢5f-%9á9áA…$‰)%9à5f „EÍAÍ)N,A 9à%J ˛=®1F-%J )-E9á √)%1F¢1E-%)Ç$„1%5f1E$„1E-$1F-$%-$1F9á5f1E5f1E1E¬˛-%C$„5f)=®$„%¢9á5f=à)b£9á1F9à-$%1F1f1E-$-$1F¢ „5f-$$„1E1E1f1E5fa1E=®$„=®QeQe5D „5á1E1E9e=ÜE¶V^ãccZ'E•AÜ=f) ¬ √¢)ä%j%I%j!J%j˝!J)            ËÈË    ËÈËÈ ËË »˛Ë »Ë «ËËËË        **J*K*K+K*K*+
  846. *    
  847.     
  848.     
  849.     
  850.     
  851.     *
  852. +
  853. **+*+*+*+*+
  854. *
  855. *    
  856. 
  857. !k1¨>BF/F/JPF0NQNPNqNqRqNqRëVí9à-%1F5á¢9áA… „YÜQe-%-$1F=®9á9Ü=ÜAÜR^ãc^¨^HR=d5D5e „))1E A)¬%Çb¬5F1E1E „1E£ √9á-$9á¢9áÇÇ)Ç1E£ „9áEÍ%1E) √=®J )1F9á5f1F9à9á))-$9à-$5fÇ-$-$5f „9á5f √¢1f¢-%5f-$-%1E „)$„-$1E-$-$1E1%1%-$1F-$$‰Ç ‰-%5f-5fb1E9á5f-$ÇÇ√)1f$„$‰%1f1E1E)$„$„A»A…))-$))1E-% „£)=®QfYÜ5$£-%-1E9e9eI«Rb´bÓc^HR5#5D1$-¢ Ba)ã%j%j!J!j!J!j*!J))        È    Ë    È    Ë    ËÈ ËË Ë Ë »Ë »ËË        J*KJ˛KKK+K+K**
  858. *    
  859.     *    *    *
  860. **+*+*K+K+K+K+K*+****
  861. !K1ÃBB/JPJPNqJPNqNQRëRqRëRqRëRqV≥=©1E)$5g1E)% „%YÜUÜ1$5f √9á-$=á9eI«QÊbÃbÔbÕVZIE¶-(‚) √£¬-√1E5e1E) √¢)¬5f „9ᢠ√-$9á1F „1E%)=®9áA…1F$„ „=®A…1F9á1fA…A…)9àA…-%9àA…-%=®)-%£-$1F √)-$)=®1%$„9á)5f „5f%9á$„1E)-%-$-˛-$k5f1E1%¢-E1E5f1E1E%-%9á-%¢ √1E-%1%1%-1E9á-$))-$1fA…5f „$„£5f-1E%1E1E√ √)¢)5eQfUÖ=f1E$„-$1E9e9eIΔRZj^Ó_VMÁ=e=Ü5e5e1E ¬a%j!j!I!JI!J)*        ËÈ ËË ËÈ ËÈËÈ ËË ËË « » «Ë«ËË        J*KJKJ˛K*K+K**
  862. *    
  863.     
  864.     
  865.     
  866.     *
  867. ****+*+*+*˛+a****
  868. *
  869. *!k>BF0JPNpNPNqNPRqRpRqNpRqRpRëRí=…=®5á √-%5f)%YÜUÜ1E5f9á$„-$=Ü=ÜAÜVZã^Ó^¨Z'I≈E¶9D9f1E5f1D)$‰1E¢-%-$1E-%5f1Eb1E))1f-$$‰-%-$EÍ=à-$9á=®5g5g-%J 1F5á1FA©-&)9áE =® „AÍ=®5g5f „t)¢J 5Ü √1F9á)1F1E-%5f √%1E$„$‰ √)=®1E1E1F¢IÍ$„)1E √5f=®EÈ5f1%1E1F1E9á √-%5f-$9á9á √=®5f1F1F √-$-%-%)%-$9á1%1E)£)1E-$Ç1F9á5f£-%A…ÇÉQfY¶9D1E1E5f1$5D9eMÁV^ã^ÓcVR=e9e-$1EÇ) a%å!J!jJJ)*        È    ËÈË    ËÈË    ËÈ˝Ë «ËËËË    ))!JJ!KJ!k!K!k!K!lKK+K*K****
  870. *
  871. *    *
  872. ****+*K*++K+K+K++*+**
  873. **)åBF0JPNqNPRqNpNqNPRqRpRëRpRëRqVí¢9à=©9á$‰9áA…¢]¶Y¶=®-%1F5f5F=áAÜI«QÁ^¨^Ó^ÃVRAÜ9e9e1E1E √5F√ „5f-%5f „-$)=àÇ)1E9á$„J 1E-%)$=® √=à5f1E-$1F1F¢N A…1F)N =®5gA…9á-F5g-%)RM=®q)-$-%%9á1%-%1Ea%Ç√)£¢-$=®-$¢-$1% √¬$„¢5f)1%¢ √=®√5f1F1F))1F1E1E)¢1%=®9á)$„)1E-%))) „$„)5f √¬A…-$ „=®=®1f „) √A»%-%5f¢QfYÜAÜÇ9f5f9á1D9eI«Z(^ã^ÓZÔUÊVAÜ5D1D¢√¬ ‚Ê!()*)*        ËÈ ËË ËÈ ËËËÈ˝ËÁË «Ë «ËË))!JI!JJ!KJ!k!K!kKKJK*K*J˝*w    *
  874. *    ******+*+*+*++K***+**
  875. *
  876. +-¨BF/JPNPNqNpNpJPNqNPNpRpRqNpRqNO9á$„ √$„EÍ)9á-F]ßUÜA©9á£5f1E9fAÜAÜQÁZã^ÓZãbiI•IË9E5e9f¬%5á5E£1F1f)-$)$„-%=®ab1F£$‰9á¬))Ç$„5á5g1E)=®5f1F5g-%1F5f=®5gA…=®=®N,)5g5g-%5f¢1E¬5f5f1FÇ9Ü√EÈ1E-%=ß√1E √%% A=®-$5Ü$„ ‰˛5fc „£$‰-É$„1F5f)¢%5g1E$„ B-$9ß)-%)-$1E „=á5g)%9á „-%1E)5f1EAaEÈ9á1E%É-$ √=ß „Qfaß(‰-$=ß1E)=áAÜI«V^¨ZÕZÔ^'I¶AÜ=Ü(‚))Ç1Db≈*)*            ËË ËË ËË Ë    Ë    ËËËËËËËË())˝!J3%k!k%k!k%k!k!kK!kK!KJ!KJKJK*****+*K*K*K+K+K+K+K++*+**
  877. **K!k9ÌBJPJP˛RqRNPNqNPRqNPRëRqRëRpNOJ A…5g-&√1F-$9®]¶]ß5f √5fA»-$-9eE¶MΔZåZŒZåRZI5#=f9f)-%1E)$9áÇÇA»-$1EEÍ1F1E5f „9á5f1F)$„-%A…9à%-EJ
  878. =®9á9® √A…EÍ5g=®9à9à-E¢J %9àEÍ5á$„9à√8=® „1E-%¢9f ¬-$%% √)$„ „%9á9á1E1E% „-)9á „Ç=ß) √1E-%=®1D-$-$1fÇA®A…-%)1E$‰¢¬1E1F$„=®1F5f5g)1E)¢)˛ √a1E5E „ √)%=® √1E%-%=ßUÜYÜI»√Ç%1D9eAáAÖZ)^äZÕZŒZ'RAÜ5D$‚)) ¬-$‚Ê    *        Ë    ËË ËË » Ë »Ë »ËËÁËËËËË))!I!I!J!J%k!j%k%k%ã!j!kK!k!J!k!J%k!j%k!J!k*K*+*+*K*+*K*K+K*K+K*+**
  879. *
  880. *
  881. **%ã5ÃBF/NQNPRqNPNq˛NP!RqNpRqNpRëAÎ)5f5g=®1%9á1E1F]ßYÜ)J
  882.  „¢1E1$=ÜE¶QÊZãZÕZå^HQÁMË5D5E¢˝1E(-%¢ „)¢ √£$„A…-%¢-%1F5f) „5fA…)$)£1E1f=®1F)A…9á%EÍ1F5f9á$‰5g√ √=®-%EÍ9àb5f „)=à$‰¢9á¢-$¬5f=®5f √£=á-1E5f5f-$1E-$1E))$=®5f£ „))1E$„-$1E%b „-%1E)1f)1E=á-%Ç%1F-$) „)-$9á1f-$1F=®5fÇ¢¢$‰5f1E5f9f5fA®$„1EYßa»11E-$$‰1$9Ü(‚RMÊ^ãZ≠ZÔUÊMÁ=e=Ü$¬¢1DB$„¢≈*˝    Ë     ËË ËË ËË ËË ËËËË˝()(!I!I!j!J˝%k%ã%k%k!k%k!k%k!j%k%ã%ã!k%k!K!kKK+K+K+K+KKKKKKKKKKK*K**
  883. **+*K%ã9Ì>F/JPNqNpRqNpNqNPRqNpRqNpRqNPJ.-%9á1FA…9áA…N  „a«]«£ √1E5f)=áAá9dZZãZÕ^¨VMΔAÖ9e9Ü$„√5fÇ9Ü-$)$)-$$„1E √)5fA»-$5f1E1F-$1E5f1E1E√1E=® „-%-E5f-%5f$„)A…5g9á9à9àEÍA…5g)A©F a1E$„-$1EA…1E √9á-$1E-$5f5f-E √ √-$)-%1E√5g9à)$„£-$9á √ „$„-%)-%=®1%)5f%1E9á9á1E-%)Ç9f5g¢1%¢1E%)1F$„-$%1E-$ „N,5g%$„¢=ß%£5f5E9Ü)YßY¶Iß=®A…-$-5E9e5#MÊZjZÕVÕZMÁAÜ5D)-$£Ç-ÇÊ˛    I    ËË ËË » Ë » Ë « » « Ë «ËËËË((I)!J!I%j!J%k%j%k!j!k%k%k!j%k%j%ã!j%k%ã)ã%k!kK!KJK+K*K+K+K+K+K+K++*+**    *    ˝* )ã5Ã>B.JPJPNpJPNpNPRqNPRp˝NpIRí-$ „=©)$‰5f=®5fa«Yß-9á5fA…-$5E=Ü=eE§VäZÕVãZ'QÁAÖ9E9f-$1EÇ „5f-$)$„-$=®5eÇ1E¢ A)9á1E-%$„%9á ¬=®J ))9á)EÍ5g))EÍA…=®5á=®5g9á-%-%1F$‰9á=®b%5f)-$)9á1E$„$‰¢Ç √1E1E1% √√1E)£9á%)9á-%b)=®5á-%E…5f¢1E5F1E1E$„)=à-% „A…A®)$‰Ç-%) „=à-%A…1E1E$„-$-$9á-% „ √5g-$) √Ç „$‰¢$„1$AßYßa»9E1E=ß5f$„9eIËRVZjV≠ZŒZRE¶5D ¢1%-$-$b$„≈)˛    !    Ë    ËË »Ë » Ë «Ë «Ë «ËËË()I!J!I%j!J%k%j)ã%k%k%j˝%k%ã%k˛)ã|%ã%å!k!lKkKLKK+KKKKKKKKKKK*K*+
  884. *
  885. **K*K%ã9Ì>F/F/JPNPNqNPRqNpRqNPRqNpRqNpRí5á$‰ √1E)$„1E=»]ß]»-)-$9á1$1$9eMËZ(Z¨V≠ZãZ'RAÜ=f5E √1E1E5f √-$%-$%1E9á5fÇ5f$‰5f-$1F5f=®-% „)¬ ƒ1E1F=®EÍ$‰EÍJ -%9áN =…=©=®-%)EÍA…%5g1F5f1E=áÇ√)9g-%-$EÈ-$% „%)$„=® „)-%Ç)b-$AÈ=®)¢1EA… √Ç%1E √ „1E5f)-%1E¢)-$-$9áEÈ5f1f1E1f5f√5á1F$„1F)$„)1E$„Ç1EA…9á-$)9á1E1E5e5D1#Yß]«5D-$1E1%A® ¬-9CV(ZãV¨VÕZMΔMË9e)) √b1DÇ!            ËÈ ËË »Ë « » « » « » «Ë «ËÁËË)(I!I%j-!I!J!J%j!J!k!J%k!J%k!j%k!j%k%k)ã%k%k!k!kKkKkKK+K+K+K+KKK+K+K****    *¸*Z%k5ÃBB/F0F/NPNPNpJPNpNPNpNPNpNPNqNpJ.-$=®EÍA…5fEË1Da»]«9e$„1D-%1E9f ¬1EÖVãV¨ZãZ'I≈AÖEß=Ü „) „¢5e-$9á) √1E1f9á „1%))ÇA®-%)$9á1F5f5f1F5f$„% √1F5gJ -%√)5f)5g9®9á)√9áA…£-%Ç-$9á1E$„9á5f „£ √=®=…1%9á-%¢1EA…5f-$√1$ B¢)) „!1E=®5F-$-%5f5f)$)9á1E9á%-$1E √9áb1F1E-$-$1E¢%5f1F1EA…1E-$-E$„ √1f5f5f „5f5E1E1E5f=Ü1$Y»aËAÜ1$5E1E5E=á=e9dRZäR¨VÕ^(VAÜ9e1$-$%¢ A))        Ë    ËË ËË »Ë «Ë « » « Ë «Ë «Ë)(*)!JJ!JJ!j!J!KJ!k!J!K!J!K!J%k%k)ã%k%k!k!lK!kK!lKL˝KK˛KlKKKK+K*+****
  886. **+*K%k9ÌBF/F/JPJPNqNPNqNPNqNPNqNPRqNpRqNpRq9fA…5f5f=Ü5e]»]Ë=ÜAß1D5f1E5E9e=eEÑZãR¨VãVV(E«=Ü5E5f-$-$ √£1E9f)$-$-$5f9á1F √)$„)$√1F1F „-%9á5f9á=®5g=®=® „9à-%=®9à-E%EÍ9®=©9áEÍ9á√5fA©9áB9á9á-$ „ √1F))%5f))1F√5f9á9f1E-%5á √A®% √1FA®5f¢-$Ç$„-$)5f5f$„ „$„Ç) A%5f¢)-%-$5f √-%9á9áa9á „-$5f1E5f5f¢-%)¢1E)$Dz1E+-Aß9eU®]»AÜ-#=ß-$5E5DE»=ÖI≈R)V¨R≠VAÑ=Ü5$9f-$-%)¢a         ËË ËË « Ë « Ë « » « »˛ «ËÁËË))J)*)JJ!k!K!K*J*J*K!J%k!J!KKKK˙K#+KKK+KKK+K*K****    *    *    ****)ã5Ã>BF/F/JPJPNpNPNp˛NPLNpNPNqNpRqV≥¢=®9á1$5E=ÜaË]»9e5e5eA®5E9e9eAÖMΔRJV¨VjQÊMÊ9C5D1$9á1E5f5f „ „-$„¢ „1E5f-$5g)1F¬=®)1F)$‰F -%9á=®1f5g9à1E)%5g=®AÈ-%=®9á9à1f9á1EEÍ1FA…-%)     1E1FA… √-%=à)-$A… „˝5fe$„Ç£¢)1E „-%$„Ç5f-%-F5f9á9á1F-$)9á1F-$=®=®9á5f5fÇ)1E$‰) „ „9ᢢ5f%)$„ „)-$5f9á „-%1F)=®5f1E$„-$5E1$9eIËY»aËI¶=Ü-#1E5E1D=ÜI«RVjRåR≠Z'IΔ=e9e ¬£9fb1DÇ•)                ËË ËË »Ë « Ë «Ë « Ë «˝Ë    ))J*KJ!k!K˛!k%å-≠!k**JJKJKJKKKKL˝KKKKKKKKKKKKK+K****    ˝*]**K-´9Ì>F/F/JPJPNQNPNqNPNqNPNqNPRqNpRqNqV‘$„-$1E9f5e9ÖaË]Ë=Ü=Ü5e$„1$=á9eEßQÁVãRåVã^HZ)=d5D- √ ¬A…Ç9à$„$„5f5f √$„1E-%)5f5f-%¢1E-%=® „)1F)5f5g-%9à9áAÍA…$‰=®=©-%5g1E9à=®1F√5f5f=©)$√9á1EÇ1E)$)$„ „)1F-$ √A…1E5f)1eÅA…5f√5f ‰-$9á)-%)9á1E5f¢)5g5f%1E1E5á9á-%9á) ¬A…1E ‰Ç9á1$-%-$ √1E1%-$)1E5f¢-$)Ç$‰1f-$$„-$1$1D1D5D]ËaËE¶9e5eA»Aß5D5DAÜRRIRåN¨ZMΔA¶=Ü-)1EÇba        Ë    ËË ËË «Ë « Ë « Ë « » « Ë «ËÁ    (*!J%ã)ã%ke!J!K!K%l)å!k*%å%åKJ!kJ!kKK*K+K*K+K*K*K+K+K*K*K****    *    *    *    *    *J1´5Ã>BF/F/JPJPNpJPNpNPNpNPNqNPRqNPRqF.5f1E9Ü1$A¶5DaÈ]ËE«5d9e)A»Aß9e=eQÁRjRåVj^IMΔAÖ9e5e)1E-%$‰ „)˝5f
  887. 1E-%-$$„=®-$-%-%9á1f-$˛-%9á5f1F)-$)$)EÍ5áE J =©%9à5g1E5f)%=®$„-$a£ „)$-$5f1F%-%)A…=») „9á√5f=®=®-%b)=®J )5g$„$‰Ç1EÇ5f%9á √É)$„√-$1F=® √5f9á=®=®9á9á=®)5f-E1E1E=à1E5f5f1E)5f-%£1DÇ-$1E-$=®9Ü1$IË1#Y»aÈQË9Ö-#A®AßAáAÜ9dZ(VjNãR≠ZMÁI«9f-$$„5f$„-$$„Ê˛    0Ë    ËË ËË ËË »Ë ËË «Ë ËËÁ)!k)å5Ì-¨%ã!J!k-¨5Ì1Õ%å!KK+-≠>%å!k)¨%å%å!kkKLKKK¸Kr+K+K+K*K*K****    *    *    ****!k-´9Ì9ÌB/BFOF/NpNPNqNPNqNPRqNpRqNqRí5à5g5gA®IÍ=Ü=ÜJ    aËb    R*R*9e)A®Aß=ÜEßI•RjNãRjMÊV=ÖEß1$-$-E=à-$9á-$1E1E9á5á5g5f1F „-%9á-%9á9®9á=®$„-%-$ „ √=®5fA©1F√)5á-%9á=®-%)1F1E9àN+$‰1E)1E-%£5f9g1EA…=®5f%Ç5f1E√)1E=®)5f1E √$‰5f-%¢1E5f √)-$1FÇ5f5g1F1E „-% √b5f1E1E „¢)5fa-%Ç-%EÍ-%-%9á-% √1FA…-%5f)9®$„$‰=®9áa-$9Ü=ß-AÜEΔYË]ËE¶=Ö1#¢) ¬MÈIÁVR(NãJã^IM«AÜ5D1$1D¢5E¢$‚        ËË ËË «Ë «Ë « Ë « Ë « ËÁË Á    %k5Ì>-¨-¨1Ã5Ì-¨)¨1Ã%å*KK%å)å-≠)å%å-Ã1Õ-¨)å!k˚K!KKKKK+K*+*K****    *    *˛    V*    *    **)ã1¨=Ì=ÌBB.F/F/JPJPNpNPNqNPNqNPNqNqF 5fÇ1%=á=á=Ü=¶b    ]ËE¶=Ö=¶$‚(„-(‚R    ZIRjNãRJZ(V(E¶=Ü1E)5f „=®$„-E-$)¢-$)$-%5f9áÇ-%Ç1F%5fA®A…5f=®)$9à-%=®A…EÍEÍ)$¬1F9á-%˛=®A…-%%9á ‰5f5fq9à=à9á1F)¢9á=®1F1F=®-$5f$„)¬√ „)5f√¢ ‰-$É$„9á1%Ç9áE…¢A»1E5f1E5f5á$‰¢Ç$„%-$) „ √£√1E1E=®5f1F-$¢-%-%) √√=®J  √£1%)¢5f1$1$=ÖE«]Èb    MËIË9e$„1D$„=f9dVN(NãNå^(I«Aß9e √1$ „£$„
  888.                 Ë    ËË ËË ËË ËË Ë˝Ë    -¨B.FO-¨>.B.!k*%å5Ì)¨)å)¨%l)¨%k%å)å:B/:-Õ)≠%å)≠)å%å!l!l!k%l!k!lKK+K*+*K******    *    *    *    *    ***J)ã5Ã9Ì>B/F/FOF/NqNPNqNpNqNqRqNqV≥-F1F$„%1E5fA¶EΔb    b    E¶N=Ü-$)Aá(‚AÜE•VãNãRjQÊZ)=eE»1$£$„5f)-%))=®5f-$1E1F1F5g-%¢=®-$$‰)1f=®$‰¢1FEÍ5f-%5g)A…1FA )=©)9à1F=®-%1F-%A…F
  889. =©)p5f1f$„A©9á5f √9á$„1E=®9à¢5f9á5f9g1F))$=à1F1E9á=®¢1E=à¬1E5g-$ A-%$„5g1F5f9á9á-$-%1EA…)$)=®5f¬√)£$„1F1E)$a)1E5f¢ B-$-$1E5f$„)¢1$=ÜE«A•]Èb    M«NIÈ=ß9e$‚=fAÜRRIJkJãZIΔ=ÜAß1D=® ¬ ¬Å*        Ë    Ë ËË ËË ËË ËË Ë˝Ë
  890.     1Ã>.>5Ì:!J!k)!K˛-¨)å!k%å)å-¨>BO>˛5Ì)¨)≠%å!l!k!l!k%å%å)¨%å%å!K+
  891. ***)*)*    *    *    )    *            *    *)*!j1Ã5Ã9Ì=ÌBBF/F/JpJPNqNPNqNPNqNq= 1F-$)-5EIËEΔb
  892. ^    MÁIËN    =áAß5E-A¶MÁNIJãNI^IMΔAÜ=eA®)9á$„1E) √)5g1F9á5f5f%9á9á$„A… ‰1E1f9á5g9á9á5á5g-%¢-E5f-$√ „AÍ=®$„5g9á1FEÍ$„9á1F=®-$9àjA…)%1F5f5g=®1F)1F5fA…9á$„% „=®-$=®)£)-$-$=®9á√%%%1f1E1E1f-%Ç$‰¬J
  893. =®5f-$-%-$5g „-%5f$‰ √=®%-%EÍ9à1F9á-%1F1EEÍA…% √)%1F9á5f$„)I»I«R^    f*I¶AÖ9e9e5e1$-=eV)RIJjJãVE•19e)-%9f=á ‚*    )        Ë    Ë    Ë    ˛Ë˛ËË)-¨1Õ1Õ)å1Õ!k*)K!k%å%k-¨%å%l)å1Õ5Ì1Õ1Õ5Ó1Õ1Õ-¨1Ó%å%lK!l!k!lK!l!l%å%k%å!k!kKJ****)*    *    *    *    *    *    ****%ã1¨9Ì9Ì>>F/F/JPJPNqNqRqNqRqNqRí= =ß=®5f ¬5EN    IÁb
  894. b*=dE¶=Ö5E1D=á5E9dMÁRkJjNJZ(MÁ9D-9f-$1E=…J 5f)$‰$„ „ √$‰5f-$)%5f1F-%£ √√ ¬9á%5g)5g9áA…=©EÍ9á)%A…1F)%√=®9à „1F5g$„-%-%e))1E$‰-%1E9à9á$„5á5f1E1F1f))9á1E%=®1D=®5á)-9á5f √1E$„-%-%)1E9á) √1E √=®=®-%)1F1F)¢9á √1E5f1E$„ „-$-$1E-$ √5f$„A…1E √¢É))$‚=Ü5DAÖIΔb*b    MÁA•A¶=á9f9e9e5CV)RIJkFkVR5E1$9fa¢-¢*)        ˛Ë( ËË ËË ËË ËËË    !K%k%å!k%k    *    **JK)¨-¨1Õ!k!k%k%å)å1Ì1Õ1Õ-¨)≠)å-≠%å%l˛K !kKK+K**    *    *    *˝                                        )    *    *!j1Ã5Ã9Ì=ÌBBF/B/FPJP˛NqKNPNqNqJO`1E1E$„5EA¶A•f*b    REΔA¶9f9ÜA®Aá5DIΔNjJkNIMÊRI»5E5F9áb)=®$„5f-$9á1E5f5f9á-%5fa9á9áA…=®-$5f=®1E1E √1E$„))$-%N,AÍ9®-%5fA…1f%9á5f1F1F „-%5á-%-%5á9à-%-E=®1E1f)5f=®5f-%9á1EÇ)=à1E1E√5f=®%1E-%9á1E-%-%9á5f-%¢E…-% ‰F
  895. Ç¢-$)1E1E)9áA…) „=®1E1E9à$„-%1F-$1E% √ bb1E5g-%1E-%A…1$5e9e=dIΔb*f*QËN5C=áAß9e(‚E«IΔRJJjJãQÁMÁAß5e-)Ç!$‚K))    )        Ë    Ë    Ë    Ë    Ë    Ë        *!K!kJ-¨J*    *    *
  896. (K*!K!k-Õ>.>.::5Ì>/1Õ!l%å)å!l)å!l!lKK+K*K******    *    )    )    )    )˛    )    *    ****!k-´5Ã9Ï>>B/BF/F/JPJPNq˛JPINqRí1E1FEÍ5e=ÜEßEΔf*b*I«RIË1$=áA®9f1#MÁNIJjNJVRE«Aá1E1E-$$„¬=®1F)1f5F5g1%5g)9á-$$‰)1F5f=®%-$5g9á5g)9à=®-%$„1F%-%=®5g-E1FIÍ √)A…9à-%1f=®5grA…J =…A…1F-%=®=…√-$%5g5fEÍJ
  897. %1E%-$-%1f1E1F5f1E-%-%1f5f5f)=á1E-%Ç-%¢-%))-$1E)9á¬1EA»5g) „ÇÇ1E%1F9áA»-$)9á5f-%)1E¢A… √£Aß--NIΔb*b
  898. RIÁ)1$9f$¬9eEßMÁJJJFjVE¶=Ü=á5e$„) ¬ AJ))        Ë    ËË ËË ËË Ë        ˛*%*!k
  899. 
  900.     
  901.             
  902.     ***K!K5Ì:JèJpFoBO>B.)å!l!K!kKK*+*K**    *˝                                                        *    *J)ã%j-´5Ã9Ì=ÌBBB/B/F0F/˚JPHRíA®)$‰EÈ1$AÖRb*b
  903. RMÁE« ¬9Ü9e-AßMÁJ(JjJ)V(MÁAß5E9Ü9á-E)9g¬1E-$)1E-$)-%1F9á1E1F1E5f1F5á9á)$1E)EÍ5g)Ç-$EÍ9á1F „EÍ5g-%)-%-$1F5f9á=áA…1E=® „$‰9à-EA…˛9á=®)5g-EÇ-E9á √A…√)9g=á5f5f=®%%) „RL1E1F-1F1E)%1E1F=®5f%$‰=®-$9á-%-%9á)9áA…$‰√9àb$„¢=®-$=®$‰AÍ9á) „1FA…)$„9e1$=dA•b*fKVIÁ9d)=Ü9E5DIÈIΔN)FJJkI≈I«Aß1$5f$„ „$„$‚J)*))                Ë    Ë    Ë    Ë)    ****!l*J    *            
  904.     
  905.     ****%å!k)å5Ì)≠)¨%å-≠>/:%åKkKkKK**)*    *    *    )    )    )    )                            *    *)-´5À5Ã5Ã9Ì=Ì>>B/BF0B/JPF0JPFPJqJPJqNr1fEÍ))=Ü=ÖE≈b*fKRREß9f1$E»=ÜE«V)J)FJNJMÁI«AÜA®-9á-%1F5f5áA…9à9á9à1E √5gA…1EEÍ9à5g)5g5f=®5á1f-%1E=®A…9á£1F5f5g5á „1F)=®9áEÍ% ‰=®£ √1F1Eq9á1f-%=®9à5fEÍA…$„A 1EA…=®√1F ‰-%5g)%Ç))$-%5f9à9áb9f5f-$5á-$=®1E=®=àb1E=®9á√) √1E-$-%)-$5f9áJ √ „1E-$9á9á1E£%£1E$‰√-$-$9áEÈAß5DMËIΔb*b*VRE«E»1$-9e=ÖR)J(FJBJQÁMËE»E»-$) b ¬¢J*))    )        ËË    *)*˛    $!k)%k**                                    **KK1Õ!k%å%å)¨!l5Ó>.5ÌKK!k!kJ*    *˛    p)                                                    )    *-™9Ï9Ï=Ì>>>B>BBF/BF/F/FPF/JPJPNq)5f=áIÈ=ÜE¶V(bKb*IΔMÁMËE®IÈ1$9e=ÜR    NJFJJ)Z)MÁE«E»E…1E1Eb5f1E-E=®5g9á9á9g √Ç¢%=®5g1F5f9á)1F=®1E$‰EÍ9á5g1f√ √EÍA…1E)-%5g √A…EÍ5f1F=à1F)$9à)9àEÍ5á%1FJ 5g1f%£5f1F9á1E=® ‰-%˛9àZ)Ç1E=®1f%1f√-$1E-$√) „5f9á √%=à5f-$-% „-%=®5f1Eb1E)1FA… ‰√¢b)√¢=®-$5f-$Ç-%$„√)9f9e9dRb*fKQÁR(A¶--)1$9eAÖFFIBjQÁMË=ÜAß9f)Ç √Åk)*)J))    )            *    %ãJ˛*    K*1Õ**
  906.         )                            )    **K-¨!l%å)≠)¨)¨%l)≠1Ì:!k%å%å!KJ*    *    *    )    )            )            )                    )    *    )ã9ÏB>B>B/BB/>B.>B/B/F0B/FPJPJqJqA…-%)1$=ÜAÖIΔfKfKV)IΔE«Aß$‚5E(„5EE¶F    FJJ)IΔRAß=á=ß=á-%£1E)¢=®9á9á √EÍA…=®-%%1f)%A…EÍ1FA…E 9áEÍ-F$‰9á1F%A -%¬5fA -E1F$„-%Ç$‰A©5á)EÍ=®1F_9á-E9à=®$„5g9á=®A 9á9á √√A…5f%5f-% „-%1F5f5f¢√) „A…5f5f1E)1E √Ç$‰9á-%¢A…1%√9á9á¢1F1F))ÇÇ1F-%RmEÍ5f¢1F-$-$%)1%5f) „¢ √-5E=ÜMËQÁb*f+VE•9d$¡AßE»A®5DA•=ΔBIBIE•9C5e$‚-1$$„a)˛)*    )    )        *J1Ã!jK**    *)JJ!K*            ˲                ˝    **)å!l)å%å)å%l%å˛!kzFO%å!k)å!k)*                                )                                    )-´9Ã>>>>B>B>B>B/B/FPFPJPFP= %-%)9f9eEßMÊfKb*^jR=e1#1$IÈIÈ9fA¶FFIF(MÁAÖ1#5E-$5f=©%)-%√)%=®1FÇ5fJ =…1E9á%$„) „9á$„)%Ç)$EÍ1E9àE =®1F))%=®J =®1F9á=©5f-$$„9á1F)$5f1EEÍJ AÍA 5g √9á$‰1f9à9à1E=® √EÍ9áA…EÍ9á5f5f9á5g9à))-% √5f)-$)$A…N -%√-$5f1F$‰1f-% „-E1F)5g5g1F5f „1EÇ √5f5g)%=®-E-%-%1E$‰-%=®1E))E®AßI«V(bJfKZ(V(IË-$¬(‚9fIÈMËFB)FjE¶MË5D9Ü1D-) ¬KJ)J)*)J))    %å1ÕB.%ã!l!k*)*)*    !KJ*                    *    ˝    *
  907. **K)å-≠1Õ-≠)å)å!l%å%å)¨)¨Jê-¨%å%å!k**    *    )            )            )                            )    )    *J1Ã5Ã:9Ì>>B>BBF/F/FPFPJPJPFP-$EÍ9á9á5EE»I«RfKfKV(ZJR    E»5D1$5EN
  908. R)J)B)NJNE«Aß5EA»A»=®EÍ5f5f9á) √=®5f „)1E1F=©5á „)5g1F-$1F)% √5g9á-%-%9à9áIÍÇ£9á)5f5g1F=®9á5f%˝=®a1E9á1FR,EÎ1F9à9à)9áJ A…Ç)%¢)¢1f9á9á5g1E9á1F1F-%-%1E1F))9á-$ „-%9á1E¢-E5f¬5g5f)1E1F$„5f$„1f5f$„1F%5f5g1E√)9á-$EÍ%A»Ç9à9á √9ÜE»AÜIΔVfKfKRV(I«=Ü=Ü-1E5DN=ΔB)>(V)IË5e-5E$„Ç$¬K)*˛)*))    %ã5ÌBO-¨%å)å*)*    )    *    *        Ë        *        )
  909.     *    **K!k-Õ1Õ-≠1Õ-≠)¨%å%å)¨)¨)å1ÕNê-¨!k!kK*)    
  910.                                         )    )    *%j1¨1Ã5Ì9Ì>>BBB/F/FPF0FPF/FPB  „=®9á1%A®E»R    RflbKV(MÊVJAß=á9f5E=ÜE¶F)B)BV*R*E®9f1E=á5f-%A©)(9à5g5faA®-%Ç9áEÍA…EÍ5f-%)A… „EÍEÍ-%$„ „5f5g1E √$‰F
  911. %$‰=®EÍ1F9á9à1F5f))-%1EEÍ1F-%)%-&=®5f˛1Fr „5g)1FAÍJ
  912. -%5g¢E…$„=»9á9á5f)1E5f)$=®1F√)√J
  913. ))5f9á-%)A®√9á=®5fA…5f9áEÈ)-$5g9á-$)$-E9á √ „¬√ √Ç£)%)$¢1D1$=ÜMÁV(bKfl^IMÊE¶=Ü=Ü-=á9eE«FB(BIE¶E¶9eAß-$$„ √ AJJJJ)J)*)%å1Õ:1Ã-≠1Õ%lJ*)*)*                Ë        ˛*    **J˛*6K!l)≠5Ì5Ó5Õ>.-Õ-≠-Õ)å-Ã5Ì1Ì1Ì-¨Fo1Õ%k!k!k**        )I!J!I!j!I%j%i%äI        *    )    ****)´1Ã5Ì5Ì>>B.>F/˛FPMJPFPJPJP$‰5f5g1E-9f=fR    Z(flfl^j^JE¶A®9e9Ü(„A®AÜFB(F=ÖIËAß=®=á-$1f5á$„R,F
  914. 9á=®=®)=®9á „) ‰9á9à-%1F-%1F √$‰=®A…)-%$‰-%9á√√IÍ-%9à1E$‰-%J 9à=®9à-%% ‰-%=®N,=©-%9à5gRM5g1FJ -%$„=®A…5g9á5f5f¢9á a-F=®9áA…=®5g-%1E9á5f$„-$9à5f5á)5f5f=®=®5g-$=à1E1f=à-%a5g1f9á$„$„A…1f5f-$ √1E5E1E-$1EA)=á)$„(‚=ÜMÁRfkfKbjRI«=f=Ü9fE…AßAßAÁB(>(E¶=Ö-IÈ$‚5E-$!ÇJJ)J)J)!k)ã1Ã5Ì1Ì1Ã)¨%ãJ)*))     ËË Ë        J    *=*J*K*K%l-¨-Ã:5Ì5ÌFo5Ì1Õ5Ó-Ã-¨Jo:5Ì5Ì)¨BO5Ì!k!JK        ))â5À5À9Ï9À5À5À9Ï5À1´!I)    )    *    **k-´5Ì5Ì>>B>B/B/FP˝JPKF/AÏ5fÇ9áJ 5f5f5DR    VflfKRZJR    I»Aß9f=áN+N    BB(=«A¶E«9e)IÍ$„A…=®) ‰=®5f1F9áN 5g √A©-%a1FA…1E1F5f9áA®√5f5g=®)√A…9á9á-EÅ1EÇAÈJ
  915.  ‰1E1f5f5á=àEÍ5f ‰=®EÎA 5g5g$‰=®J 1E5á=®1E5g-%)%%J -%5á=®EͲ5fA©9á5á˛5fC1E „=®1E)9á=® ¬5f$„-%9g$‰%¢%9á$‰9g √-$1E1f-$9á5g1F1E1E-$)9á1E)) a1E9Ü-$(‚-E¶RfkjåZ)R9d9E5D5e)9eE«NJ>>(MËMË5EE»1$£Ç √bJ*˝JOK!k%å1Õ1Õ1Ì1Õ-¨-¨*JIJ))ËË «ËË        **KK!l!k%å)¨1Õ-Õ1Õ6:1ÕNëFO5Ì5Ì:::FoBO:BO-¨FO5Ì%lJJ    ))ä5À9ÏB=Ï=Ì=Ï>9Ï=Ì5´-™!IJ    *)**J!k1Ã5Ì˝>SB/B/JPJPJqJQNqJPJP9 1F)£=®EÈ5e5D=eQÁflflV(ZIMË9EA®9f9f9áE»F    >BE¶R    IÈ9áIÍ5g)1F5f))1f5f)9àA…)9àJ 1F9á1F5á5gA EÍ9à=®%5g1F9áJ $„1FEÍJ =®5f%1E%A… √A…1EÇ5gEÍ5f-EO1f-%5áEÍA…5g√EÍ=®-%J =©-%5g9à$‰)5g¢1F-%1F)b¢-$1f1F)=®1f%9á=®5f%-%-%=®5áÇ%-%)$‰A…5f√A…5f „9á9ÜÇÇ-$9á=®-$1%-$ÇEÈ5fA»5g¢)9f5E9DI«^IflflZ(V(I«=f5e˛5E1D9¶>:M»E«5E5E1D¬√¬)%K˝J"*!KJ%l-¨1Õ!k1Õ!kJJJ()ÁÁ « Á «                *J!k%ã1Õ1Ì1Ì1Õ)¨5Ì˛1Õi>.V—:-¨5Ì>.-¨-Ã:FO5Ì>.%ãJp5Ì*)*I1´9À=Ï=ÏB=Ï>=ÌB=Ï5Ã1ä)ä!IJ    **J*!k1Ã9Ì9Ì>>B.>FPJPJqJPJqJPJPF0Jq5âEÍ=®$„5fE»AáMËZ)fåflZ(MΔV*IÈN
  916. 5e=á9ÜAß=«>(=ÁE«NIÈ5EA®9á1E1f5g=®=®-E „9á-%Ç9à9àA )A…A…1F ¬1F5á9à˛5f1F$„EÍ9à1f1E5f5f9á5f))Ç=®£EÍ=® √)-E=®=©=©A…-%J 1F-%5g9à)√=®-%A EÍ=®1F9áA…1F5f=®=®=ß1F-$1F-%5á)1E˛)K1F1f=©5g √ √A…EÍEÍ5f-%¢A…)) √9á)¢1E-%5f-$-%)$1E1E-$ÇÇ5f5f-%1E9f5E1AÖZ(fljåbjZ(I«=Ü9fE»1EEËIË=Á::(I»5d-¢ ¬A®9Ü%$„)l!kJ!kJKJ!k!k)å!k5Ì-¨˛JJ)))ÁËÁ        **!K!k-≠5Ì1Õ-≠-Õ!k:-≠-≠1Ì1ÕFoV—-¨)¨5ÕB/)å)¨5ÌB.-¨:!kFO-¨
  917. ))ä1´=Ï=ÏBBBBBBB9Ï5À-ä)ä!j**KJk!k5Ì:>>B/BF/FP˛NqNJQNqJPJPFPB5gA…5gA»=áEßAÖVfçjåZ(bjMÁMÈAßEÈA»5fN
  918. F):=ÁI»IË5E5E „-%EÍJ 9àA…=…=®1F „1F5á „9à=®-&ÇJ =®EÍ)1F5f9à1f5g5f%¢A…1F=®=®5á5g-%=®A…5f-$Ç)9á-%1f5f-%=®5g=©9à-$A…=®)9áN,9à1F1E9à1FA©9á5f5gb5fA…¢J EÍA…1E9á)9á1E5f √EÍ9á1F5f=®-%)1E „$„AÈ1F1EÇ=®1E£$„EÍ9á) √)))-%$„-$1E¢1F-$))-%9f9f=ÖE¶M≈fåjå^jV(I«Aá=Ü9f¢9eJ    AË::(=eAß=ß-$ √Ç √-$-$Ä!çJ!kJ!kJ!kK!k!K%å)åKJJ))(ÁÁ            J;K%å-≠-Õ%å5Ì%å!l5Ì-¨!k5Ì-¨)¨NêJp%kJ1Õ:!J!k)ã5Ì%k1ÕJ>.%ã    %i5À9Ã=ÏBFBFBF.B=Ï5À1´)ä%äJJJ!k%ã1Ã5Ì>>B/>B/B/FP˛JPNNqJPJPFPJPF.5f5f9à9áA®AáR    QÊjçfå^iV(QË=Ü=áA®A…$„E»=Ë:=Á9e=ÖE»IÍE…-$$‰-%=®A©9á5fA A EÍEÍ-% √$„1f-%)%1F1F9à1f-E5fA…1f9à5g$„1EÇ$‰9à=®=® ¬=®=®5f=®9á%5f1E)=®5gfJ A 5gVnA…$„5g=©-%-%EÍ5g1FEÍE =®A…-E=®5f ‰=®-% ‰5á9á1F9áA…5f9à1F-%-%1F5f5g5g9à¢1F5f£-%1E5f „)5á9á$„-$-E-$)1F1F)1f)A5f √¢-$9á-$-%5f1$=ÜRZHfåj≠^IRAÜI»1$9ÜA®9Ü-AË:>(AÜR*9Ü5E-$„ A)) ¬)!k!j!kj!ã˚!k jjII()(˛)(    J*!l)å1Õ1Ì1Õ5Ì%åK-≠%å!k)¨1Õ%kK>.B.*    !k!K*J!K)åJ)¨%ã5Ì!J!I5À> =ÏBBF.B˛F.=Ì9Ï5À1´)ä)ã!j!ã)ã5Ã9Ì>>B/B/FPF0JPJPNqJq˛NqLJPJPFPJQ1EA…-%=®=á=fMË^JfåjçVZ(I«=ÜE…5EA®J
  919. 9f5¶:B=ÜN
  920. R,E…A»=®5g√1f9á9à9á „=®√1fR,9àN,=®5g-E-E9á9á-%-%EÍA 9áJ 5g1E1f=®£)$5á1E1E)$5f1f=®5g)A»J 9à9àVn1F5g „)EÎVn)1gJ 9à5gA©1F)%%EÍ1F9áA…N,$‰1F9à √9á5f5f)EÍA…9àN,1E=©9á1F9á$„A…EÍ-%-E9á5g1E5f) √9á-$-$%%5f-$9á1F5g-$)=á „1E√Ç√1$A…A»E®9eIΔVjçjç^IIΔI«AáIÈ=á1%9Ü5e-D9Á:1$=Ü-5f9á¢Aßa¬$„%&J!k!j!ã!k!ã!k!ã!j!k!j!j)I)))())    *)JK!k)¨%åkK˛J8K)    %ã* Ë Ë     ËËË    Ë        *    %j)ã9Ì%i9À9Ï> BFBF.BF.BB9Ï5Ã1´1´)ä)ã%ã1Ã5Ã>>B.BF/F/JqJPNqJqNqJPNqJqJP˛FPH=À ¬9áA…R,IÈI«QÊj≠fåfãV(I«I…N
  921. J
  922. A…5fA®9«:F)A®9ÜEÈ-$A…A…1FRM$‰1E9á9á=©9á$‰9àA…9á9à=®9à9á9à5á9à √9á-%1F √1F=®9á9á9àA… „%1f5fEÈ9á9á1E1FEÍ£)$1F √1F1F9à1f)£J A… ‰√EÎEÍ9áN,1FA…5á5g5á9®9áN,-E1F1F)˛9à\%¢9á9á5g9®-%=®5f5f√1E1F-%A©A…=®5g-% „9à1F%-$-%1E1E$„5f9á1E¢5á1%1f9á5f$‰É5f9f-AÜIΔ^jjånÆbjZI9C9E-=á1E5fA»5Ö5Á:(,„EËA»)9Ü£b5f1$b%h!k!k!ã!ã%ã!ã%ã!ã!ã!k!kJJ)I((()(I˛)A*)JKkKKKkKK*J         Ë     ËË ËË Ë Ë Ë    Ë)%i)â-ä1Ã9ÀBBFBF.FF.FF.B>9Ï9Ï5Ã1Ã1´-¨-¨5Ì>B.BF/FPJQNqNqJqNqJQ˛NqLJQJPFPJPFQ-$ ‰A…A»9fR    V(j≠j≠bã^jR1=á5EEÍA»A®>5ÁBIÈ1EJ
  923. E…)%AÍ$‰-%N,=®)N,9àA…1E%√ ‰1E-%5g9á5g=©9à1EA…-%)1F)9á1F5gN,1EEÍA…)-%¢=®5g√1FA…A…-E5f1f-%q9à=®A…9á$‰$‰)A…9à$‰1E5á-%)5gEÍ9à1F-%=©1fA A…J )5áN,-EEÍ5á¢)%9à5f-%$‰=®)$5f9à1E√1F1F5á1f9á „¢ √9á=®a-%5á))Ç-%J
  924. ÅA®Ç-% √-%-$Ç(„5E9DE¶M≈j≠j≠bjVI«9e5D)5g9f=á9«5Ê1ÊN
  925. ))9á1E1EA1$5f†çk!ã!k!ã!k%ã!ã!ã!j!kJJ))((˛)()˝)#*KkJKKKJK** ÁË Á Ë ÁË ÁË ËË ÁË Á Á Ë%i)h1™9À=ÏAÏ˝BhFBF.FB>9Ì9Ï5Ã1À5Ã1À5Ï9Ì>>B/F/JPJpNqJqNqJPNqJQNqJPJPFPFPF/FP5g9á ¬9f=ÜI«QÊjÆjçZIZ)RAß9f5f=®EÍIÍ9«5Ê1Ö=ßRL-)$EÍ1E=®ÅA…A…1E%-%=©=®)9®9àN 9á1F-$-%-%=©))-E)9áN =©)5f9à1F)-$9á=à9à%)%9á)=®9à5gA…9à9àtEÎ1FEÍR,A…=®9à5g=®5á9®9®=©9à-%9á1FEÎ9®-% ‰A… „1F)1E$‰9à=à=®-%9á5g9á=®-% ‰EÍ5g=à=©-%5f¢ „1E1E$„A…A®-%=àJ
  926. Ç-%-%% „1F=®√-%%1F%a1F1E5E1$R    MÁZ(fånŒbkMÊQËAß1DA»5f=®9á=Ë5Ê:5E1E5E9á=®9á-Eb¢-#m!k!ã%å!ã%å!ã%ã!k!ãJjII))))˛)))**JKkKkKkKJ**     ÁË Á Ë ÁË ÁË Á˛Ëx ÁËË Á(-â5™=Ï=ÏBBFBFBF.FF.BB.B>5Ï5Ï5Ã5Ì:B/B/FPB/FPJPNqNqNëNqNqJPNqJQJqFPJPFPFP= $‰A A…9ÜAáZLZ)j≠j≠bãbãE¶R+=á=áJ EÍJ =Ë5Ê9Á(„A®9f9á=®A 9àA…%9áA  ‰=®J )9à)EÎ$„J 5fEÍA…9à „5á9á=®9á$‰1F=®1F1F)5g1F9áÇ)A»1E-%1F „)J A…)J J 1FA…-%$‰=©J =®J ˛=®J =®RMRM9à=…-%5g-E9à)N 5á9à1F√%J A…1%¢-%˛5gP „)$9á9á5g=®$„1E=®9á5f))5f$„b1F5f=®A»)Ç-$5g$„)A…EÈ)9á5f1F5f5E1#MÁVj≠j≠bjIΔR    Eß=Ü(„5f1E5Ü5Ü5Ê1ÊA®=ß5f=®) √9á5e) ¡!≠!k%ã!ã%å%ã%ã!ã!ãJJII((()(˛)&)))JJkJKJKJJ)) ÁË « Á « Á « Á ÁË ÁË Á Á Ë Á()h9À=Ï˝BFBF.B˛F.cBB9Ì9Ì5Ã9Ï5Ï>BF/F/FPFOJqJqNëNqNqJPJqJPFPFPJPFOFPFP9àA…EÍEÍIÍ5EAÖZ(nŒj≠ZHZ(EΔZMN
  927. 9á-$9àA…9Ë5Ê9«=®EÍA»9gA…-%)A J 9à=…1F √=®=©-%√5g-%=®5f=®5f1F-%N,1F1EEÍ1E9á=®5á1F9à5g1f9á1f-$=®1E √ÇA…5á-%-E=©-E-FEÍ5g-FN,5gA…1F%-F=®1F-%-E1F1FJ N,5áJ EÎ=©9á5g9àEÍ=®=®£-%9à=©=®5f5á1f1EN,1f)$-%1F)A…=®$„5á5g5f£√-%)Ç9á=à5gEÍ1E √ √1E√b¢9áb1FEÈ9áE»EßMÁ^Ij≠nŒbjV(=d=f=Ü=á-$5f5f5¶1Δ1Ê=á5f √¢1E√A1E1e$‚!≠%ã!ã%å%ã%å!ã%ã!j!jIJ))()())J)*)**JJkJKJ kJJ)* ÁË ÁÁÁÁË ÁË ÁË Á(!H-â1™5 9ÀB B F˛BF.FF.F.JOF/F/BB.9Ì9Ì5Ï9Ì>B/FOJpFPJPJP¸NqJPJPFPJPFPJPF/FQ9©¢5áRMIÈV,MËZ(jŒnŒ^jbãI«5EA®A…˛=®55«1Δ>N EÍA»)$„9à$‰£=©A…=®A…%-&A…=®=®1E-$ „1E√=à)9á)9à-%ÇA…N 1f5á9à9á=®1f1E „=®=®AÍ=®AÈ9á9®EÍAÍ5g5gVn{=®5f%-&-%)%=®A…)A…A 9à1f9®1F5g5g9à9á1F-EN,J R-1FJ )J  √1F9áA…9á „9à5gA…1E1FN,=® „1F=®1F1E-E$„ „5f=®=®1E √b5f-$$‰9á1E-%1E5f)-$5fb-%5E5EE»RV(jÆnŒ^j^jMË9e=Ü9Ü1E1%9á1Ü1Δ5Ê ¢1E9á-%EÍ5f¢!£°!Æ!ã%å!k%ã!ã!ãjjII()()))    )    ))JJK˝J
  928. *J))Ë Á Á «Á˛( Ë « Á Á!H%H)â-â5™9 ˛=ÏAÏBB BBFBF.F.JOF/F/B.B.>>9Ï9Ì9Ì>B/FPJPJPFPJPJPNqJqNq˝JPFPFP˛B/5g9àÇ5fA®E»ZKZ(jŒjÆZHV(bmI»E»˛=®6A 5ß1Δ1¶)-%=®A 9àN A…-%√-%=©A…=®5g1F=®1f9àA…9àA…5g)%=®-$-%9áA…1f „-&5f5á9à5á$„=®=® √=®5g5fJ 5f5f5gJ 5f5g$‰5gzEÎ=©J 9àA N,A N-9àAÍJ 1FA…9à9à5g=®EÍ1FEÎ-%EÍ5g1F=®J =©J =®A©-%1FA…9á))£5g√5fN,=®√ „-E¬A…EÍ5f%¢ „√1E)$„5fÇ1FEÍ5f1F))5f=®=®)9á9fAÜMËZIjÆnÔ^IVMË=Ü9e9á1f1F5F1Ü-≈1Ê9g%A…=®9á-$A»1E¢a%ã%å!ã%ã!ã%ã!k!kIJ))()(I)*)*)J)JJk˚J)) ÁË «Á¸!H Á(%h1©˝9À=Ï=ÏB AÏBB BBF-BF.F.JOF/JOF/F/B.B.˛>    >>B/FPJPFPJpFPNqJq˛NqPJPJqJPJpFPFPB/B/EÍEÍ=©9áA®I»R    Z)jŒnœ^IV(V)VLA®A…A…=…A…9Ë-≈5«J A -%J A…J,9áVmJ -E-%=©A…EÍ=®VnN,9á5f5g9á9à5g9á9à9à1EA…9á5f-%9à5g9à5g9á√1F1E¢ √A…) ‰A…9à5áA…9àN,A qEÎEÍ9àEÍEÍ9à5f-F9à$‰J RM5à5á9àEÎ5g1fA 9à9á1fJ $‰J -%5á9á5fA…9à%£EÍ=©9à=©√√ √√5g9à-%%-%1E¢5fJ
  929. 5á1F1E-$-$1E1F „£1E%J
  930. 9á1F)$9àJ
  931. 5f9á9fAÜ=e^InŒjŒfãMΔE¶N
  932. =á5F1F1E „)D-≈-≈5f √-E-%A…¬$„)-$¢!'!ã!ãk!kJ!jII())))*˛)*)JJK*J)J)*))Ë « ÁΔÁ!H!H˛%h!H!H)i5™˝9À=Ï=ÏAÏ=ÏB =ÏB B BBFBF.F.JOJ/JOB.F/BB=Ì˝>B/F/JPF0FPFPJpJP˛Jq>JPJQFPJPF/FPB/= 9àJ 9áA®I…V*M≈nÔjÆZ(fåEΔE»R,E…EÍ=©=©1Ü1≈5«J A…1F5g5gEÍ%1FEÍA…1f1F ‰)1F-%)1EAÍ1F-%A…1FN,5g9áA©5g=®5g=®5f1F)$˛1F1E „9á=®$„5f5gA…=®1FEÎA EÍJ 9®9à$‰))=®5gA N,5à5á)VnRNA A J 9àJ A…EÍ5gA…1f √9á5g√1F √IÎ=®)%)5g=®AÍA…=®9à-E$„N+J 1E-%$„1E√-$9á1E √=®9á$„=®-% √-$ „%$„Ç$‰ √9á1EA»5E=ÜV*Z(nŒrÔZ)VI«Aß1$5f5g-%EÍ5ß-•1Â1% √%1E-%9á A1D-$9Ü%G%å!k!ãk!jIJ))()(I)J)*)**JJkJJ)J)*)) Á Á « Á%h-à-â-â1©-â1â)h!I(1™˛=Ï^=À=Ï=ÏB =ÏB AÏBB BBFBF.F.J/F/JPJ/FOF.F/BB.>>:>>B/B/FPF/JPFPJPJPNqJPNqJPJpFPFPF/FP5à5f=©A®E»=áV*fåjŒnÔZ(VR    R
  933. Aá9á9àA 9à=Ë-•1¶=àA )1F9à5á=©√=®A J EÍ5f9á-%5g5g1F √-%¢9á)=©9à5g=®˛9à˝9á1F-%-%%=®)$)5f=©N,5g1F1FEÍ=©)%%:-F5g5àJ A =®5g1F=®AÍ=©)5gEÍRM)A…J -&5g9®=®A…EÍ=®1F=®EÍ5á)5f9á=®=®√-%EÍ9à=®EÍ))=®=®1F9á-%-%1F=à1F)1E1E=®=®¢1F1F˛1E1=®9á)Ç5f9à9ÜE»E»MÁ^jnÓnÔbãMΔ9D1$1$-$=®%1E9»-•)§5F%%-$$‰-%$‰!)-%G%ã%ãjj)I)))))J˛)))*JJ)J)J˝)Ë Á ÁΔ « Á!H%h1â1â5™1™5™1™1™!H((5 =ÎAÏ=Ï=Ï9À=Ï=ÏAÏ=ÏB =ÏB AÏBBF.F.F/F.JOF/JOF/F/BB>>9Ì:9ÌB.>B.>B.B/F0F/FPFPJPJPJpFPJPF/FPB/9©%J A©A®MÍZKZ(nÔnÓ^j^jI«9E=á1E9áA…1F1¶-•1•1FA…5g1F=®-%=®1f√=®A…=®A…5g=©=®A…9àJ EÍ-%5g-%9à5g9á=®5g1E%9àN,A…9á1FA…9á-%9á1F%9àA A…=©1f-%5g9®=…EÎEÎA 9àRMEÍ=…5gR-J =àJ 1g=©A F J EÍ9à=©EÎJ J EÎ=…A…9à9àA A…1f9á=®9à9à „%1F9®A…5g-%1F5g=®5g9à-%%=®=®=©=®-E1EA»9áÇ=®-$1E1f5fEÍ=®=®Ç)1%-AÜE¶MÊnŒsbj^jMÁAß9f)-%Ç!)§)≈=áA©1EEÍA…=®5f$„ Ba)ä)´!ã!jIJ))(I)I)JIJ)J)JJJ*J)J)))˝ Á «!H1â1â5™1™9À5 9À5™)â()â9ÀB =ÏB ˛=Ï#B AÏB AÏBB BBF.F.F/F.JOF/JOF/JOF/F/BB.>>9Ì>>B.>B/>>.>F/FPJPFP˛JPLFOFPB/B/A A… „=®5E=ÜR    RnÔnÔZH^jZLR R,=®)1g1F-Ö)§1¶9áA…A…=®N,RMA…EÎ1F)1f9à5á9àA©=©9à9à1E=®=®-$5f5á9á=®9á9áEÍ%1F1F¢5áEÍ)%1E9á5g9à-%1F-%A…)J EÎ=©N,A 9®9àJ =©=®5áEÍ=©5gEÍEÎ9®=©A…1GRM)%1gJ ˛A…`AÍEÍ9áA…=®5g1F9á9á=®1f5f5gA…J 5á1F1E9áA…√%9à9á5g)A®-%-%5f$‰Ç1EÇb$„-$1F-%)5f-$-%9á9á=®1E5F=á=fMÁV(nÔnÔ^jMÊI«=ÜA®-A…5g1E1Ü)§%£1&¢9á-%1E)-$$„¢ ¡6-´%äIJ())))I)I)*)IJJ˝)f    ) Á Á « ÁΔ ÁΔÁ')à1â5™5™5 5™9À5À5 5™9À5 =Ï=ÏB =Î=Ï=ÎB =ÏB =ÏB =ÏBBF.BF.F.J/F.JOF/JOF/F/B.F/>>::5Ì::>9Ì>:>>FPF/JPF0FPF/FPB/B/>/=®9®A =®=®E®R    Z)onÔZIVI«E»N
  934. J
  935. 5fEÍA -Ö)§-ÖN 1F)EÍ=©A…˛=®)1F=©A…9à1EA…9®9à1F=®=©A©EÍ=®9á9à1F-%%=®5á-%1E)√ √1E$„9à=®A…J EÍ1f5f5g1f=©9àJ RM=©=A…-%9àA EÎA J A )%N,=©1F=©J 5à=©-F=…=©J 1F ‰9à-%5gEÎEÎ5g-%9®J A…1f=© √EÍJ %9àJ EÍ5f=®1fEÍ9á-$£A…=©-%1E5f$‰-%EÈ£1%F
  936. 5f5f)˛9á= „J J E…AßI»MÁV(nÔsbjZIE¶Aß9f)1f5f-$-e)§-≈-%$‰¬-%¢1E$„¢1E ¬>/1À%ä!jII())J)JIJ)J)JJj)*))))    ËË˝ Á ΔÁ%h-â5™5 9À9À=Ï9À=Ï5™=Î=ÏAÏAÏBB B =Ï˛B rAÏBB BB F-FF.F.JOF.JOF/JPJOJOF/FOB/F/>>::5Ï9Ì5Ì::9Ì:B.B/JPF0FPB/FPF0FOB/B.A…-%J ZnN IÈV*^JnÔobã^JV    AáE»R,9á=©A©1¶)§1¶1FA %)%9®)EÍ5g1FRM5á=®=©9á-%5gJ 9à)1F1F9à5g=®-%5gJ )%a)9®9á1F „=®A…-%-%-&5g5f=©A =®9àAÍJ 9à-EA…J =…A A…=©EÍA EÍ9©N,EÍ=©AÍ1gA J A 9à=®1F=©=©1F5g-&=©˛=®5á$‰5áN,EÍJ 5g$‰-%)5g5fÇ1E)√Ç5fA…√¢-$-$=®-%)-$%1E£ „5f-$A…)$F
  937. 1E9®$„-%A®=á=eV)Z(nÔsbãVMË5D-1$)1F1E)D)§%É9á5g1F5f5fÇ9á)-$-G5Ï-™)ä!iIII(J)J)J)J)J)J))) Á Á « ÁΔ ÁΔ ÁÁH-h1©1™9À9ÀAÏ=Ï=Ï=Î=Ï=ÏAÏ=ÏB =ÏB =ÏB =ÏB =ÏB =ÏB B BBFBF.F.F/F.JOF/JOF/FOB.B/B.B.:>9Ì5Ï1Ã5Ì1Ã1Ã)´-Ã5Ì>˛B/NFOB/B/:>N,=®9à5á9áN IÈR
  938. ^JonÔbã^kZKI»5e9áJ 9àA…-Ü)§1¶A…=©EÍ5g9à9à-&AÍA…EÍA…9àEÍ5g5g%))=®1F5f5g9à5g)9áA…=®1FÇ1E1EA…$„£¬5fJ 5f √1fA©=®EÍ9à9à=®=®AÍ9àA jA A…J A AÍA J EÎ1F5gJ =©J EÍEÎA AÍEÍN,=à=©RMF A…)-EEÎEÍ9à$‰EÍ)1F=®9®=®A…5á=©EÍEÍA…9à=©9áN,EÍ9á1E1E)$EÍ1F9à5g%)1F9áN 9á9®-%%1f-%)%Ç-$E»I»V)^InÔs0bjREΔE®=Ü1E „-%1E1Ü%É)§5F5f5F=®J 1F A)-9Ì5À1À)ä%ä!I!jIJJJ˛J$J)J)J))))ËË « Á « Á Δ Á «!H1™5™9À9À=ÏB B=ÏBAÏB AÏB˛B B˛B BB BB FBF.F˝F.gJOF/JPJ/JPJOJOB/F/BB.>>9Ì5Ì1Ã5Ï-Ã-Ã)¨1Ã1Ã:>.FPF/F/>5Ì1Ó5g9®9®5á)9fR ZKfåosZHZIMËIÈA®E…9à9à5g1¶%É1¶A©=©9à=©A…N,9á ‰=…9à5f9á9àA…=®=©-E5á9à9à5g9à-%EÍJ %A…=®9à)%A )5fJ =®a=©ZnA 9àEÎ=©EÎRMN,RM=©9®EÎA iEÍEÎJ EÎA 5gN,RMEÍAÍN,9àN-RM9àA…5g9àA…EÍ$„1f5gJ EÍRM9áA…1EA…-E √5g5g9áA…1F9á5g)%1EA 9á$„5f=®1F9á9á5f$„√9á1F9àA…=® „%)1F „1f)EÍ-%EÍ5f$„-$5$IΔVosbãRIΔE®A»1E=®9á=®1Ü%Ñ!b9g5f9á1f1F=®Ç-)5Ï5À-™)ä%i!jIjJJ˛JJ)J)I))˝ ÁÁ « Á Δ Á Δ Á Δ(%h-â5™9À=Ï=ÏB =ÏB AÏB AÏB =Ï˛B =ÏB AÏB AÏB B ˝BlF.BF.F.J/F/JOJ/JPFOJPF/F/BB.B>9Ì:9Ì5Ì1Ã1Ã-´-Ã)´)¨-Ã:>B.>:1Ã-Õ=®N,5gZèE…1E5EI«Rs0obj^JR    AßA»E…=©A EÎ1Ü%Ñ-ÑRN9àA A…=©5áJ $‰J A…9á=®Vn=®=®9®-%J A…EÍ=®9®-% „-E-%1f5g1F1F-$1E=® √1F1F1E)J J =®9®=®%EÍEÍN-A =©A EÎ jF AÍN,EÎJ )=©AÍJ %AÍ9àA =®J 9®A…=®AÍ1gRM9à)ÇÇ9à9à9á=©1FA…=©1g9à9àA…EÍ%1F1f1F=®9à5f)%9á1F1FN,1F=®9á5f√)-%9à1F-%1E)1f-%-%5f9à1F5fE…E»=ÜM«bjos1^jVV*Eß9f-$$„9á1%9«%É%§-%)5F-$1E „ b%5Ì5Ã1À-ä)ä%ä%ãJjJJ˝J )J)))(ÁË˝ Á Δ ÁÁ')h)à1©5™=Ï=ÏB =ÏB B BB B˛B B˛B BB BB BBF-B˝F.JOF.JOJO˛JPbJOJPF/F/B.B/>>>>:5Ì5Ï5Ï1Ã-Ã)´)¨-¨5Ï1Ã1Ã-¨-Ã)Ã=®=©=©9àEÍR,VLN    ^Jos0^IZIRbèA»=®-%-%A 1¶%É-Ö)A…5g=®=®AÍ=…5g)%EÍ9á£A Vm9àJ ))1FN,5gA…5g-%1F9á1E5f √N,5g1F9á9à9á9á1F ‰A…=©9àEÍ9à)A…N,5áJ EÎJ AÍ9à=©=©J EÎ9à ‰EÍRMEÎJ EÍ1f=©N,J =…1F9àN,EÎJ ZéJ 9á)5g1f9®˛A SA…A©A…=®=®%9àEÍ9á-%9®=©5á5áA…)9à1F$„)9á=® √$‰-%=©)1f5f9á9á1E9á) „-%¢N
  939. 1M«V(ss1^jQÁI«Aß1$A») a%!c!c5F-$1f1E-$$„1E¢ b5Ï5Ã1™-™%j!äJJIJIJ)J)I()(˝ Á Á « Á Δ Á Δ Á Á(!H)à)g)à1â5 9À=Ï=ÎB =ÏB B BAÏB =ÏB =Ï˛B u=ÏB AÏBB BBF.BF.BF.F.J/F/JOF/JOF/JOF/F/F.F/B.B>>::5Ï5Ì1Ã1Ã-¨-¨%ã)¨%ã%¨%ã-¨-´1Õ9®A 1f1F=à1EZMA¶Z(o0sZHV(MËI»RL9áJ )%$‰)e!c)Ö1F9à9®EÍA =…9àA…9à)EÍ5gÇ1F)A…N,Ç5f¢9á5á5f-%EÍ „1f-%9á)1F5á=©9á=®=®-%1f1F=®5g=©EÎ1FA N,VnA…=©A J hN--FJ ZèJ RM-FEÍJ A…-F=©=…-%-&=©RMA )A A 9à=…AÍVnA©=©=…A EÍA =®A J AÍ9®9à9á9àA…EÎ)9à%-%)-%Ç9áEÍ9à%1FEÍA…1F1E-$A…-%9á=®A©-%1E1E5f5g1%1#AÜAÑZ(owQbäV(E¶AÜ5e1E9á-E-%-e!c!É5F9á1E1E9á- „)a1À1´1À%ä%ã!jjJJ˝J)J)))˝ÁË˝ Á Δ Á!H%h-â1â-à)à5™5 =Ï=Ï˝B F¸B yBB BB BB BB BBF-BF.FF.F.JOF/JOJOJPJOJPFOFOF/FOF/FOB.B.>B.9Ì:5Ï5Ì1Ã1Ï-Ã-¨-¨-Ã)¨%¨)¨1Ã1Ã5©5g=©A A…=á=áMËQÊs1s1f¨bkM«E»A®J 9àJ 9à1¶!c5«J 9àA…9à=®VnF 5g=®-EEÎJ 9à5g1F „J J  √5g)=® √=®A©=®¢-%9®A…5g5g-%5gA…N,EÍ%9®J 9à9àA F -F%A J -&RMRMqN,-%9àAÍ9àN-Vn=©-FAÍ1F=…RMJ 5á1F9àRn5g1FJ -F)%9®N,J EÎVn9á5gA…9®A…-%N,J 9à5á5g9®5á-%A…1F9à=®1Fa5f1F-%$„9á)9àN,5á5gJ -%1F9à5f-$A…-$1F=ß1DMÈRMÊos1^jMÊ=d5D9f9Ü=à5f)$)D!cb5F-% „9á)$¢)¢)$„1Ï)ä%ã!jjIJIJ)J)I)(˝ Á Á Δ Á Δ Á Δ Á Δ()h1©1â1©)h-â1©9À9ÀB =ÏBB BAÏB =ÏB =Ï˛B
  940. AÏB AÏB AÏBB BB BB˝F.hJOF/JOJ/JPJ/JOF/FOB.F/B.B/B.BB>9Ì:5Ì5Ì1Ã1Ã-Ã1Ã-À)¨%ã-¨1À5Ì>=®RMA A©N =Ü^mZ(s1sbãZ(MË5D=á=®EÍ9àA…)e!c)ÖA EÍA…)N,9à9áA…5g=®9áEÍF 9á=©)$EÍJ 5g5á9à5g √1E9á9áA…=®£=®EÍ5g5g√5g-%5gEÎ-%=©AÍ1F5gJ J =©RMN--%=©=…vA A…F 1FA EÎVnEÍ1gRM9à9àJ EÍ5gJ -%=®J 9àEÍEÎA EÍ-%N,AÍ-%1FJ A…=®9à=©1F5gZé=©5á5gJ AÍ9àA…A…=®A…=®=®)A…-E)%J )5f5g5g-%1F1F-%)=®=®-%J )9f(‚AßRZ(s0wRfãV(N=Ü9f5f-E1FA…1¶!c!É-1f-$)%1$¢$„-(„-à)´%ä!ãjjJJJJ)J))()(˝ Á$ Ê Á Á!H-â1©5™-â-â1©5 5À=Ï=ÏBBF-BBB BB BB FB BB BB BB BBF-B˝F.JOJ/˝JO JPJOJPF/FOB.FOF/F/>B.>>˛:S5Ì1Ã5Ï1Ï5Ï-¨-Ã)¨5Ì5ÌB/N,=©ZèA©EÈ9fV*bks1sQV(bkR    V,A®EÍ=®-EE 1«b)e$‰AÍA…1f5g5á=©5gA…A…9àJ =©9à=®%)=®RM=©5g9á£1E9à5f)-E%A…J 5gEÍA…1F=®=®A…A 9àA Vm=©Zè9àA…-%EÎ=©EÎ1F-EÎJ RN9à1F „N EÎ-%1F=©)=©RMRMEÍ5á-%1f)J A =©EÎA =©9®9®A AÍA =…A =©-%=©5gEÍ%1F5áA…9à5g1E5g˝9à=)$)%A…1F1F)1E9à1E5g-E9á-$1F$„Ç$„-$1E9f1E¶^Is0sQjÕV(E¶=f9f1E%1E9à%D!cb1E1F5f¢=®5f √!$„!%ä%ãjjJJIJ)I()(˝ ÁÁ Á Á Ê Á Δ Á Δ Á)h-â1™1©1™1â5™5™9À9ÀB B BB BB BAÏ˛B =Ï˝B tBB BB BB F-BF.F.J/F.J/F/JOF/JOF/JPF/FOB.F/B.F/B.B/>>:>::9Ì:5Ï5Ì5Ï5Ï1Ã1Ã5Ï>>.1g „1FA®A»I…E¶QÁsQs0fåbåV)I»IÍA…=®)%E -¶!b-ÜA…=©A…=©)N J 9à)9à$‰-%1F5fEÍ5g$‰$„)9à9à9á5g))%5g1F)$‰9á9áEÍ)$‰J =©9àEÍ=©9àN-9àJ N-A A =©EÎN,A…pEÎJ N,=©=…=©5àJ VoN,EÎN,)5g9àA J AÍA J =©AÍ1F)%=©$‰J A A AÍN -EZnEÎ1FJ 9® „=©EÍ)5g=©5f5g1F5á9à=®1f9à$„)5f9á5g=…)$J =®5f5f5g5f9á1E-%=®9á=ÜAßM«Rs1wrfãRMËAß5E=á1F√¢-eBC=á5f5f) „)¢-$1$))ã!äjJjJJIJ))()(˝ Á˛ ÁÁ˛ Á`H-â5™1™5 1™5™5™9À5À=Ï> B-BFBFB BB BB BB BB BB BB BBFBF.FJ/F.JOF.JOJ/JOF/FOF/JOF.F/B.F/B/F/B.B/>>.:>:>::5Ì:5Ï5Ï1Ï>>B/= 9à5gN,IÍN
  941. MËVsQsRZ(^jM«VLN =áA…5á ƒ%DB-Ü=©F A…AͲ5g+1FJ N,A 9á1F-EEÍEÍ=®=®5g5g=®=®5f9à9áA…=®EÍ=® ‰)% √1gN,5g=©N,9®=©1gEÎ5g-%A…=©A 5gJ J N,A m=àN-A…=©5gJ 5á5gRMEÎ5gF A 5gEÍ=®=©=©EÎAÍ=©A RMAÍJ =©9àA EÎJ EÎ9à)%EÎ)%A…-FRMEÍEÍ9à=®9à5á5á5g5f9à9á5f1FA…1FEÍ5á5f1f%-%=®-%%1EA…1F-%-%A…=á=Ü=eMÁI≈s1sRbãQÁAÖ5D=á9á5fEÍ√‚C"A®-$5f)-$9á-$!-$$„!!jjJJIJ)I()(˝ ÁÁ˙ Á!H1™5™5 1â1™1©5 5 9Î9ÀB =Ï˛BB BB B AÏ˝B BB BAÏBB BBF.BF.BF.F.JOF.JOF/JOB.F/B.F/˛B.\F/B.B/B.B.>>:>:>::9Ì5Ì1Ï5Ì:>>EÎ5gA…J R,E»I«Z(sQsQ^jRMË=f=áA…E 9áE !#B-Ü9àA =©A…=©=®EÎ1f „EÎEÍ5g5g1F)=®A…5á5g)1F-%5g=®$„9á5gA…EÎ=® „=…J )1fEÎN,=©=…=®EÎ=®EÎJ A EÎ-FEÎJ =…=©    n-%9à=®=©A =©9àJ 5g1F9®9®J 5à5gJ EÎ9à1gRMEÍ1gN,EÍA A AÍ=©1g1gJ Vn1g9®AÍ5á5à-%=©J A…9à9àE 9®1f9á5f5g$„5fEÎ5g-%=®-%=®1E)=®1E1F√Ç5g=®£¬EÈ9fAáIΔV(s1wsbäV(E¶5D$‚5f-%-%A…"C-1F5f-%)$)5f √ „¢%i!ãJjJJIJ))()(˝ Á Á Á Á Á()â1™9À1™1™1©5 9À9Ï9Î=Ï=Ï> ˚BB BB BB BB BB BBFBF-B˝F.JOF.JOF.˛JOF.F/B.F.B.F/F.F/B.F/B/B/>B.˛>Q>.>>5Ì5Ì:>>>/J,RM$‰9áR,I…MËZ)sQwrZIZ(R    MÈ1E1E=à1F5g-ß")e5g1F5g9®=®EÎ5gA…1F9à1FEÍ)=®5g)$-%5f-%1E-$=®1E5g9à-%1F1E)N+A…=®9áA -%)%=©A =…=©E =…)%5à5g=©A -F5g9®=©AÍ1FA…=®5à=©=©5g5gA…9à9àEÎA…=©5g1FA )A RMEÎ9à-&5gN,A…=©Vn1gJ J J 9à=®EÎJ %)5á1FÇ1fEÍJ =®9à9à)A…1F9®=®))1EJ
  942. A…9à1E1E5gEÈ1FÇ5f=®¢-$A®MÈRVsQwrjÕMÊMËAáAß)%-%A…""5F1F9á1E))¢-$-$ ¡%≠!j!kIJIJ))()Á Á Á ÁÁ ÁH-â5 5 5 1™5™5™9À9À=Ï9ÏB =ÏBB BB BB BAÏBAÏB˛B     BB BB BBF.BF.B˝F.7JOF/JOF.F.BF.BB.BF.BB.B.B/BB/>>>>>>>:5Ì::>:1gF J -$A®N
  943. ^mZ)sQsQbãbkMÁZmE…J
  944. 1f-%=®)Ü")eN,9á9á5á˛=©+)J A…9àA…=©9à5f9á=®N,=®-$1E1F9à=®9á9á1F5g-%)=®J A…1F9à=®A AÍ=©9àb–N,J A…AÍJ RMF =©N,AÍN,J =…N,9®=©A J 9àJ N A A…A J -FJ AÍ=©=©AÍJ EÍRMJ J N-)N,RM-&=®A RMJ A…Vn9à-ER,J 1E=®$„5áA…=®5g1f5á ‰A…J 5f5g √1F)=®=®1E¢ „=®-$¢=®9á5f=á1#I«^Is1{ìf¨V(E¶=f$„A®=®1f)!E©=®5f5á1E5f$„b)$‚!¨!ãjjIJ)I()()(!H)à1™5     9Î9À9À5 5À9À> =Ï> =Ï˛BB F-BB-B BB BB BB BB F-BF-BF.FF.F˝F.gJOF.JOF.JOF.F.B.F.BB.B.F/B.F/B.FOB.B/B.B/B.>.>>.:>:>.>>.5á-%J IÍEÈR AÖZ)sQwr^J^jI«=ÜE…1%RMAÍA©!D!DE RMEÍ=à=©=…A…1F$„EÍA EÍEÍ9á5á9à-%1F9à9á1f1F5áA…)J 5fN,F 5gAÍ1F5gEÎA =©=©A 9àEÎ=©RMRMN-1g5hN-RNN,J Zèm1f)$‰EÎ=©9àEÎEÍEÍ5áA…=©EÍ9àEÎ1g=…5á=©EÎA…EÎJ A EÍEÎJ,5à%J A 5g-%9à9à=©=©1FEÍA 1f=®ÇA…A… √5fJ 1E ‰=®%-%A…9à „ „=®))5g5á9à9á-%5f-%EÍ ¬IÈ5DI«bjsQwrf¨MÁI«E»5E1$1E$„9à-f‚=á9á-% √EÍ1E „$„√ ¡!¨JJIJ))()((˝((!h)â-â-â5 5 9Ï˛5À 9Ï9À=Ï9ÏB =ÏB> B B BB B˝B =ÏB B BB ˝BF-BF.BF.B˙F.BF.BBBB.BB.B.B/B.B/B.F/B.B.>.B.:>>>˛:H=áEÍ9àR,1ER,I«Z(srsrZH^JI«=ÜR,5fA…9à5F!E!$5gN,J 5g-%N,A -%9®5áAÍ$„A©-%9à9á „)5g1F5á1f-%$‰A…A…5á5f5á1F-FJ A A…=©A J 1GEÍRM9®A EÎRMJ 1F1F1g%1GN,p=…A…5gN,N,=©9àA A…=©N,=©EÍ-&N,RM=©J,=©EÎZèF =©AÍEÎA EÎEÎ9®A N,N,EÎ9®9àA EÍ-%5g-E=®9á1F5g9à=®)A…R,-E9á1fA…N,1F9á)9á1f1F5f)1FEÍ5g-$ „1FA®1$IËE•VsR{î^jZIV*E®E…9á1F5f))f‚¢=®1E£ „5f „ √Ç ¡åjIjII(I())((˚(%i%i-â-©1™1©1™1™9Ï9Î9Ï5À5Ï5À9Ï9Î=Ï> BB BB BBFB BB B˛B     BB BBFBFBF.B-˚F.JN¸F.WB.BB.BB.B.B/B.B/B.F/B/B/B.B.>>.>B.B>:B.A…9à-%=àA»=fV*QÊsrwìbkVV*N
  945. A®J
  946. 9àA…=à!$‚-%-ERMA )=®J 9®9à-%9á9®))9à-%-$EÍA…9à5g5á-%$‰9à1f1F-F1F=©=®5g9àA…EÎEÎJ F -&J A J =©˛EÎAÍEÎA…=©RMˇ%AÍ5g5g1F9àA…=©A 1FJ =©A…=®A…1FJ J A…-&AÍN,N,9à=…EÎJ AÍEÎA A =©=©A…=®1F5g5g5á˛9à>9á-%A $„)=®9à%5f1F √=® „1F9áA…1E)5á9á5f¢ √1E-$1F-%5fAßE»E¶V(wr{ìbãI≈AÖ1Aß=á1E1F1E„‚ ‚))5f5f √9á1E¢¢%kJJ)I))˝(((˚
  947. H%i%h-â1™1™1©-©-â5 5À˛9Ï5À9Ï9À9Ï9ÀB > B> ˙B =Ï˛B =ÏB AÏBB BB BB BBB-˛BfF.BBBB.B.F.BB.BB.BB.BB.BB/B.B/B.F/B>.:>BB.::5ÃA…9á=®5fE…AßR    M≈sìwrZI^JI«9E-A…A…=®=à‚!$9g1F9àEÍJ -%N,A 9à1F5g5gJ 9á)1F5f-%5g5á9á5f1f-%-%1F1F=©J 5gA EÍ5àJ J EÎEÍRMA 1G=©A RNN,9©J VoEÍA 9à5g=àA 9à5gJ RMRM1FN,A…Rn=©Vn=®J,AÍ=…VnJ √EÎVnN-AÍAÍEÍRMA A AÍN-EÍA A =©9àA…9®9àA…9à9à%5f1FA…5g9á9á5g=®9á$‰)A…=® √-%5f-$)%=®1F¬A…5fA…9g9áE®9eR)V)sQ{¥fÕ^jE¶I»9f1E%)5á%%‚ ‚IÍ$„=®EÍ-$-%) „$„!IjjIJ)I)I()())(()((%i)â-™1™5 1™1©-â1™5™    =Ï=ÏB> B =ÏB =Ï> =Ï˛BB BB BB BB FB FBFB F˛B BB BBB-˛B F.BB.BF.B.F.B.F.B.B.B˛B.X>B.B.B/B.F/F/FOBB.BB/>>:9ÀN,EÎJ A…IÍN
  948. E«bkwí{ìZHfå^lI…N =á=®=®=©!E‚%EA©N,-%J J 9à=©=©A…A…=®9á-%9à5f-%¢-%5g9á1F=®9á=®EÎA 9à1F1F=®5gJ 5á9àJ AÍA…9®A Vo5hA J A VnRM5àA N-A 9ài=®=©EÎ)%9àA…9à9à)%J A =®-%A F 1GN RMEÎ5à9àJ A N-N,J J A )EÎRMEÍEÎEÍ9®5á5áEÍA…9à5á5gN,5f1f1f-$1f9à=®=®1F5f=®=®5f1E=®-%-%%)A…5f)=®A©5gA®9e=fV*ZJsrwìbãZ(I«=fIÈ9g1E$„5f‚ ‚$‰-$)¢1fa √a(‚!ãjII)I()()˝(&(((((%â-â1™1©1™1â5 5™9À=ÃBB B=ÏB AÏBB BB BB BB FB FAÏFB ˙FAÏB =ÏB > BB ˚BF.BF.BF.BB.BB>B.>B.BB.B.˝F/PJOF.F/B.>9Ï:=®5g=©A 5FIÍ=áN    ^kwìwrV(V(ZJAáIÍ=®=®A…E $‚!$1E-%=©1F$‰9à)5g-$J J 5f=©9à%EÍ √1E5g5g5f9à9à1F9®=®A…1f=®J 5g5gA…9àN =©EÎZè9®N-ZèA 5à5à5gA EÎ9àJ J -&A…9àEÎEÍ)1FEÎJ 9à-FN,J Vn9à5à9à=©EÎb∞Zè%9àJ 9àA RMJ RM5à)=©N F EÎ9à)N,1FJ EÎRL5g5g9àJ 1F1F=®9à5f5g5á √5g „=®-%=®5á9à9á5g5g9á√))$A…EÍA»$¬5Dbåsr{¥^jV(MËAáAá=®5f)$5f1®‚ „1%-% „5fA…1E)5e°!åjjIJII)I(I(I()()()()()H-™1™1 1™9À9À=Î=ÀBFJ.¸FJ.FF˛BF.FJ.˛FJ.JJ-JJ-JJFFB B > BB BB B-˛B F.B-F.BF.B.F.F.F/B.B.B˝B.UJOJ/JPJ/NPJ/NPF/F/>:9ÏB )$1g1FEÍJ
  949. EÈ5DE•wì{ìbãRRIÈA®A®9áEÍ=à$ ‚%EEÎ=©9à1F=àN,A…=©EÍ9á$‰-E9áN,$„=®9à ‰9g9à)1f5f=®9à=©=®A 9áEÎ=©9®5g9à)EÎ9àRN9àJ N,RMVèA RNJ F A A RMJ s5fA…9à=©=®EÍ5á9à=©9àEÎ-FEÍJ EÍAÍ9®5à=©EÎ-&A -F=©J 1g=©VnRMJ  ‰=©A Rn=©9à √-% √-%Ç9àJ AÍA©EÍ1E-%A…J A©9®1E „ √EÍ1f£=®9á1F9á$‰1F1F)$9á9à5f5f9fE«RsRwìfÃRMÈAá=áJ
  950. -%$„=à%%‚¬1%9á√)9á5f „¢5DjjIJII)I()()()()()()˛( H)â1 5™9À9ÀAÎ=ÀFEÏJJ˝N-RMN-NMJ-NNJ-J-FJ-FJJN-JRMR-RMR,R-N,RMJ,J-F,B=ÏB B B> BB ˝BbF.BF.B.F.B.F.BB.BB.BF.J/NPJ/NPJ/N/J/RONNF.B : 9Ï=®5áEÍ=à9á5EE»MËwìwrR(^jMËN
  951. =áA®J 5á=©$ ¬9à9áJ -%9à9àEÍ1F9áEÍ1f)1F=©A©¢-E5f9à9á5f „=®5g=®9à9à=®1fAÍN,A ZèJ 1FJ =…EÍ9à5gA EÎ1fJ RNJ =…=©J EÎJ 5gN,A =®A…A…EÍAÍEÍAÍJ =©$‰RnZèJ A =©EÎAÍ^∞A Zè1GEÎN,1g1F=®N,1F5g5g=®=®9àJ J =®9àAÍ)%A 9à5á1f5g%√9áA…)$=®1fA…%N, „-%-$1EA…RL5g1F1f5gA…A…N,A®N    R)sQ{¥b¨E¶=e59f9g5&-%Ç√ ¬ „-=®A…√ÇAÇÇÇ)!ijJJIJII)I)I(I(I(I)I()(%â1©9À=ÀAÏ=ÎAÏAÏJJ-ZmVLZmZlZçZm^çZmZçVmVmRMN.JN-JN-N-ZmZl^çZl^mZl^çZlZmRmRmF-B =ÏBB BB BBB-BF.B.F.BF.B.F.B.F.B.B.BB.F.NPN/RPNORPRO^éZnZéRmNnB-=Ï9®=©=®EÍA…N E»R)wì{ìZI^lEáEà5%Aâ9g=®=© ¬!$5f1FJ R-)%¢-E-%9á5áEÍ5g)9á=®=à1F-%N,5f1F9à=©9à=©A…9à9à5g ‰J =©J J 9à=©A VnJ 9à5g1GVn9®^∞=©A VnJ,F z-%)A…A A A…A…=©=®A J AÍRM)N-EÍ=©AÍ)A VNF EÎEÎ1FRN9®=©=©=®1fA 9®RN=®5á1F1fN,=©1F))5g1F1FEÍJ -%√ „1fEÍ))-%-E=®-%9á5g)A…=®-E „-% √5g „EÍVKR(sr{≥=»1•!¶‰*$.F*EN™-ÂD¬°9g$„A…5f¢5f ‰ÇbÇÂIJIJ)I)I)I)I(I)I()()H1©5™˛=À 9ÀAÏJ jÔfÔjÔfÔjfÔjÔjÔjbÆ˛ZmR-N-JN-N jÓjÔkfœ˛jÔ fœjÔbÆVLRLRMB > =ÏB =ÏB> ˝BbB.BB.BF.B.F.BB.>B.FJ/N/RPROVpVOjÔkkbœRMNMNNEÈ9á$‰1F √9à „R+V*{¥sRF>:'‰*%%Ê>I)ܰ„IÎ5g9áJ EÎ-%N,5g1f)$1F)EÍ)1E5g-$-%-%EÍN,9à-%5f5g-%J A…9àA 9à1F%J RnJ N-N,9©N,VnVèVn9à)J Zè-F5gRMN,9àA 9®A =©EÍA 9à5à=©EÎAÍA A -FN-A =©R-J A )EÎRM=©9®9àA…Rn=…EÎA…5g9àVn=…=©5g5gAÍ=®J 9àA©EÍ)J $„N,F
  952. 9áÇA…9á%N,5g9®A…1f9à5á-%=®N EÎ=©A…5g5g5f=áNRå    d§Ñ§    eÖ≈BâRÎ6áC¢A… √-%9á5f-$$„-$ÇHjIjIJIJIIIJIIIJII)I(((%h9 9ÀAÏ=À=ÀJ-‘wì{ìwì{î{ì{ìwì{¥{ì{ìk^ç^mVM˛N-i‘wì{î{ì{ìwì{îwì{ìwì{¥sRVmRlJ-> B > B> BBB.BB.BF.B.F.BF.B.F.BB.F.JOJ/RpROVPR/¥wì{ìwì{ìwìRmRmJ,VnN,A…AÍ9à9©=®E¶Fj)ƒ6>'>G>G•""*%Δ:Ücm!E-%%J )5fJ A…A…=®A…))$)1F-%9á9à-%b)A…=®1EN,EÎ9à-%9àJ AÍ=…^∞9à˛=©9àJ N,9àAÍRNN-N-= 1F=©EÎF A EÎg5g5g=®=®=©=©A…A R-A -EN,)=…AÍ9à^∞A 9©A R-J EÍA N J A AÍ=©)EÎA…5á$‰-%EÎ5gJ =®EÍ9á=®9à=©9à1F-%-%a9áJ A…=®Eͬ$‰ √A…EÍ9á-%=®5f-%1FEÍ9á=®1f1F1FN
  953. #B#Dddѕ֕.$2FRÎ"%&6à-%1F)√Ç%)-$(·lIjIJIJ˝I)IIJ)I)I(((!H-à=À9À=ÀF ¥wrwífÔffÔjjÔnjÔjwì{¥fç^mV-R-N,{≥wì{ìfÔkjÔojÔnjÔjwì{ìb≠VmFB> > =ÏB > B>BBB.BB.BB.BB.BB.F.J/J.NORORPR/{≥wì{ìojwr{ì^çVmF=áN,=®9à5g5g=®!c!É!Ñ!§66&)‰•**&6f2E:á[,>h-%9à5g9á)-%1F=©5á=®1F1F5á1F1E5f!9á9à%√=®)$-%J N,J -%9àJ A N,J 5áA A AÍJ RMJ $‰9àJ =©A N-RM9®A…=©A rEÎ)$=®J J 5g9àJ 1FZèRn1FVn5gJ 9àN-Rn1gJ N,AÍN,RMA…9®J A 5g9à-%=©9àN,5g9à=®5á=®A…=…5g1FA…EÍ9á1FA…5fÇ-%=©-%-E=®1E1F-%9á=®9à9àA 5g5á5á=®A…=®5á=® ‚!cCcDE%£•)‰.Ö"2FS .àF6®cn=®=à=®)¢) ¬!GjjjjIjIjIjIJIjIjII¸(H!H)à5©9ÀB sQwìwpZjVLVLZlZLblblbm^,{ìwìnÔ^LZMR wrwìwq^ãZlZL^m^lblblfl^Ls1wìjÔVMJ.FF> B > BBB-BB.BB.BF.B-B.B-B.B-F/J/NPNORORNo0wìwíjÃféZMk{ìjÔRMJ/=®=á5g9àA 1á‚#!ÑÑ6)‰2&)‰¶&2F>à>®6á6ßS F IÎ=…A…J 5á1F5f-%9á1E9à-$1FN,J 9à=®A…5g9à5g1F9àA J -&5gN,5g5àA J EÍRMAÍEÎJ RMJ 5àA A 9àF VèN-5gRMN,q5g5g)J VnAÍ1FJ 1gEÎ9àJ 9àJ RMN-J A EÎ1G)1G5gA 9àJ J J =©N,5gJ 5g5gJ =©EÍA 9àA…9à5á)%1fR-=®=®N,1F5f%=…9á5á=®9á1f5g=®A…5g9àEÍF EÍ=©9à9à5g"B!c#cD%ƒ£%ƒ%‰%‰•2G[.O2©.âcOS,¢-E5f¬=áÅkjIjIjIjIjIjIjIJII˝((H%h)g1â1âJ wí{ìVkRLJ N-N,VMZ,^M^Lblwì{¥få^mV,^l{ì{¥b¨VLN,R-V,ZM^Lbm^L^Kwì{ì^åVMFFB B> B> B>B>B-BB-BB-BB.BB.F.JON.NONOZmwrwìjŒfé^M^LsR{ì^åRNFFA»=®9à-FÅCBD    $D%ƒFh:'§Ö.%.&2g2á>…>»O >®.Ü5FÇ1F9à-%J )EÍIÎ)5f1f1EJ 5f=©5á9á9áA©)AÍ9áN,)9àJ AÍEÍJ A EÎA J A A EÎZèVnJ =©RMJ N-EÎA A Zè`EÍ5g√=©EÍ5gJ 9à9®9àEÎA J =©1G1G^∞J J N,EÎEÎ9à1f9àEÍ=©J EÎ)%-%N,N,5gRMRM9à9à%J RMEÎA…)$)5g9à1f9á-%9àEÍ9à1F=®=®AÍ5gA 9áN,)%5àA…5g5gRM=©N "CB$d1Â2%ƒ%ƒ%‰¶2GW.K 6ÀFÌ6 _N2» £=à √1e ¡ã˚jIjjjIjjjIJ)I()()H!i%h-à-à=ÍRl¥srN,F BF N-R-V-R-^mbå{ìwìbLZ,ZMb≠{ì{ìZKN N-NV-V-ZMZ-^mfç{¥{ì^åN-J.FF-B BB BBB-BB-BB.B-B.BB.BF.BJOJ/NON.VobÆ{¥{îfÆ^N^Mbl{¥{ì^çN.J/F/5fN+=®¢"!B!cCÑ    $e2Bh)‰*¶*G&g2©S-K >…:®2F5g-E9á%EÍ5gÇ9á&=®√9á-%√1f9á9à9á9à9á1F) √J RM1F1FEÎA…EÎEÎA A J =…=©ZèJ ^∞ZèA )J,N,J =©)RM    J 5f5g1F1FA ) √N A…˛EÎSJ EÎ1F%J J EÎ5gEÍVnJ 9à=®)5g5gJ J 1F)J 5g9à5g9àA 5g-%1f=®5g9àA…5f$‰9á=®-%=®J A 1E5g=©1F5gEÍF J EÎ$„=©EÍ5á))D‚"%cC)ƒ6Fh:&%‰Ö>hW-gp:À>Ã>À.©6®6G=®%¢A»H˛jijIjIjjjIjIJ)I()˛(1I%h-à-à1â= kwìo1F AÏAÏJN R-NR-V,owìsbLZ,ZLowìo0R+JJ N-R,R-R,V-^LowìsQZLN-FFBB> B> B> ˝B]B-BB.BB.BF.F.N/N.NOVMfÔ{ìwr^LZN^MjŒwìwrZlN.FF.IÈ=á·!""!c)Ñ)§cÑcd)ƒBh:G*.F:©2âFÏJÏS&g.á&eB*$‰A…))N  √5f)¢9à=®1E5g=®9á=®5gEÍA A…=®-%5gA 9àA J J VnEÎN J EÎ-&))EÍEÎ9àRM=…N,RN˛=©b5fA…A®9áRMN,Zn=à1F=®J EÍEÍIÎJ EÍEÍ=®VMEÍA…)A…J A©EÍN,A…E -%=®EÍEÍ-%9á5fN -%5f=à=®A…=®1%IÍA…=à-$E…9f1E)-%=®RM=®EÍA®-%5f9á=®1F9á=©=©N,=ß‚‚!C##Dc)ƒ6BH6!≈!ÂWW..â>Ã:À6 "F&9f)¢ ¬)ä!jk˛jk˛jAkjjjjIiHiHIH!i%h-â-à1â1©F sR‘RlB 9 F F JF JN ZLsQ{¥j≠blV,^lsQ{ì^¨RLF JN R-N-N-R-^msr{¥fŒZmN-J.FFB B> BBB-BF.B¸F.\BF.J.NON.NON.Zéo0{îo^mV-bms1{¥oZmJ.F/A…EÈ5Ü"")Ñ%c1≈!ÉDD!ƒ6&:G>hB©>™6 2™>Ã>À2©F'-$9á1E √-%=ßA»=á1E$¬1EA…=®5f1EN,E…EÍN,9áA…9áEÍVnEÍ-J 9à=®A©N N A…VNN =©A…J EÎ5gJ VMEÎN A A =áAßEÈ1%=ßRMJ J
  954. N A®E…IÍA…IÍE…E…9f=®N E…IÍE…A®A…˛IÍG=áR-^èIÍR,N A®R,b∞E…A®IÍE…9fIÍE…5f1%=áIÍA®(„IÍIÈE…A®)1ER+E…E…VMVM=áA®A®J 5gJ a‚‚‚¢‚B##!É1Ê%ƒBH:'%√§J™:à*h: K6 2à&!cR 5D-E%ã%ä!j˛jj˛j jjj!j!I!i!h!i!H!h!h%i)h˛1â-à5 J+{ìwìJ+9 5™9À˝AÏ'N,ZK¥wìfåZ,ZLZ*{¥wí^lJ F F J F JJRMZlwìwìbåVMN.JF.BB> B> BBB.BF.F.J.F˝F.˛N.JN-VL{ìwìbçV,ZM^KwìwìfÆV-N.JJ/9Ü ¢˛ABC$É!§!£BH:GJ™BâB™BÀO_0cQW.> %&%E)E…9e=á5E9f=á=ÜA®1$9fA®A®5E5e5EA®EÈ^èIÍ=á1%IÍVMN =áA…J =áR,R,A®=®IÍA…A…IÍN IÎ=áE…EÍE N 9ápN
  955. I…MÍAß=á=áIÈIÈIÍMÍMÍIÈIÍE®E…VMN E…ZnR+E…I…IÍR+N
  956. E…VMI…A®R,IÍN N
  957. IÍ5EA®IÈE®E»I…5EVLAáI…IÈAß9fAßE»9eAß=áE®R,5D9fN
  958. =f=áN V,IÍIÈA®1EA©VL ¢Ç¢√!c%É:1Â)ƒ:'.ÑBà>h>âBÀFÏ.h:©.E
  959. 9DEß-´-´-™)™%ä!ãjãj!ãjãj!ä%â)â%h)â˛)à8)â-â1©1©1™1â1â= Rm{ìsQAÍ5™5™9À9À=Ï=ÎAÏN,fœ{ì{ì^KZLZLf≠{¥wìVKJ EÏJF FF JRM^å{ìwr^lZNR-N.F.F-> B-BB-BF.F.JOJ.JO˛J.NNJ.˛N..J.J.N-^ç{ì{ìZKVMZLblwì{¥^+VNR.N/F.J ¢√‚ ¬B    #%§1≈1Ê2:'Fh>hBâW.gqkícPOBÎ"GÊ&-9fAÜ˝=Ü%E»E®E»9eAßE»E»9f1$IÈ=Ü5EVLE»A®E…IÍE…R IÈE»=áR,IÍAáR,f—N E®b∞ZnR,R,Aß^èR,VMIÍ gAÖMËIÁVKE¶N    R
  960. VKIËA¶ZLVKR    VKZLV+R*R
  961. R
  962. ^mbéV+R    V+R
  963. V+=eMËI»AÖR
  964. R    R    V+N    VKMËR    MËR    MËR*E«ZKAÖV*ZKR    I«R
  965. I«MËI«R    béA¶ZlR    IËZlZLN    ZL^çAß9e=Ü‚¬!B‚°‚ „"-§%É:5Â:'!£Ö6%BàF™2g:à>©&%ÊÂ5e5D5Ï9Î=Ï5À1À-©%™jä˛j !ä%â-â-à-â-à-â-à1©5™9 9 =β9 iF k{ìbŒAÍ-à1©5™9À5™=Î=ÎR,o{ìoZKV+bls0{ìsQR,AÏEÏAÏF AÏB FRLo0{ìo0bmZMZMRMNNB> 9Ï> BF.F.N/J.N.J.N.J.N.N-RMRMRNN-J-F VLfÓ{ìsQZLN ZLjŒ{ìo^mVMVNN-NN-áÅ ¬¢!cBc-§:6)ƒ1Â.!√J™RÏJÏFÎK FÎFÎ*fÊ    ≈M®=fA¶I«˙MËIËIËMËV+MËAÜR    ZLR
  966. I«V+MÈI»R
  967. ˛ZLAÜR
  968. ^mE«MË^mMËI«˛V+V*ZlIËVLN
  969. Zn5V(ZJbåZI^KMÊZIRZ)Z)ZIjŒZJ^J^k^J^k^kV)Rf≠Z)ZJ^JZI^kfçZIbåblVV)Z)Z)V)V)^kV(ZIRV)RV(QÁ^jRZJRbåR^JZI^JZJ˛båYV(Z)V(ZJZJV)R)RIÁ=Ö ¬#%C √¢# „-§1≈9Ê-Â5Ê!§de!ƒ*NÀ:g>à2E¶*%1ÜMËBNMJ,NMF,B 5Í) !ã!ãj!ã%â-©-â1™1â1©1â9ÎF J,F J,J J,F N,^´{¥wìVå-à1â-à1©5™5 5 B N+wr{ìZlZLblf´{ì{¥ZkAÏF˛AÏ^B B J-VLws{¥fØ^mfç^m^çRMJN9Ï> > B.F.NON.RON.RON.RNZmZçZmZçVMRLN,RL^ã{ì{ìjÔJ R-ZLs0{ìfœZL^m^mZmRM9»"‚‚%c%CB)É1•1≈)§:6>G>G6&JâF©NÀB W-cO6à.g.EÊ9eIËZJMÊZ)ZIR^jV)RZIV^JZIV(^kbkZ)V(bå˛^kZJ^jbå^k^K^kV)ZJ^kRZ)V(^kV)blbk^k^kZJb≠bçVK ˛fÕjÓfÃjÓf¨ofÃjÓjÓf≠jÕf≠b¨f¨b¨fÕf¨fÕjÕojŒjÓf¨jÓfÕnÔjÕjÕjÓnÔfÕjÕ˛fÕjÕfÕfÕf¨jÓfÕjÕf¨jÓjÕfÕfÕojÓ˛b¨jŒjÕfÕjÓfÕ˝jÓfÕfÕjÓF ¬!B"!B!B‚¢¢¬%c-§-•5Ê1Â!É!§deÑ%‰N™>à2%Â*F)^ã˛bœ^ØJ-F,B,1 %äj!ä!â)â-â1™1â1™1âAÍbŒbœ^Æbœ^Æ^œ^Æ^œbŒ{ìwìsQ%G1à-à1à-à-â-â1™=ÎRKo0{ìkfŒjÓ{ìwssRAÏF AÏAÏ=À=Ï=ÀAÏF Vlwr{ìs1jjÔbçZLVmNMB 9ÏBBJ.J.RON.NNN.R-fÓkjÔjÔfœfÔbœbœbŒwíwì{ì=ÀJ N ZLjÔ{ìo1fœfœjÔfœj9«)d"%C"!")c)c!cB!É%É!§%§BHBH:'.>hJ™RÏW :à.%≈RJZkfÕ˝b¨^ãjÕbãjÕfÕojÓf¨fÕjÓjÓf¨f¨jÓb¨jÓjÕjÓjŒjÓfÕjÕjÔjÔ˛jÓ
  970. jÔf¨jÓjÓjÔjÕjÓjÓfÕjÓjÓ{¥{î{¥{ì{¥{ì{¥{ì{¥{î{¥{ì{¥{î{¥{ì{¥{î{¥{ì{¥{ì{¥{ì{¥{î{¥wì{¥{î{¥{ì{¥{î{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì{¥{î{¥{ì{¥{î{¥{ì{¥{ì{¥{ì{¥¥Nå¡!##%C%C‚#Bcb%É)§!ÑdEÑÖ§:G6F.&!‰.%_{¥{ì{¥{ì{¥¥RnJL> %ä!ã!j%ä)â1™1™5™-âRn‘{¥{ì¥{≥¥{ì¥{≥{¥¥sQ-h1à-à"1©-à)à%h%â)àAÎJ,Vé{¥{ì{ì{¥{¥wrEÎF EÏF AÏ=Ï9À9Ï9ÏJ-VmZm{≥{¥{ì{¥{¥jZmRm˛> gF.J.NON.RON.Zê≥{î{ì{¥{ì{¥{ì{¥{ì{¥{¥wìB AÏAÏN-VLZLwì{¥{ì{¥{ì{¥{¥>")c%C#!C#B!cC%Ñ%É%§6Fh)ƒ)‰2:gNÀN :g*%*Âg0{¥{ì{¥{î{¥{î¥{î{¥{ì{¥{ì{¥{ì{¥{î{¥{ì{¥{î{¥{ì{¥{î{¥{ì{¥{î{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì{¥{ì$o0o/os0o0sQo0s0oo0s1s1o0s1s0s0os0os0os0o0o0os0osQs0s0o0ooo0os1o0˛s0
  971. o0s0o0s0o0sQs1s1oo0o0˛sQ(o0s1o0o0osQo0s1os0o0s1B    "!B)c%C!"""CB!Éc!É$!§dÖ!£Fâƒ2%*VÃs0˝o1]{ìsRNLB )™!ä%ä%â-â1â1™-âRm{ì{ìsQo1kk1ko1ko1o1Rl)h1à-à-à-h-à!G!hH%h5…F+F J+o0s1s1^å=™EÏAÎEÏAÏAÏ9À9Î9À9ÏB NMVM^Mos1s1{ìwì^çRMB=Ï> BJ.J.N.J.Vn{≥{ìwrs1o1o1o0o1ko1o1bÆ9™AÎ=ÀAÏF RLR,R,fÔ˛o1#ko21¶"%B‚CB%c1≈5Ê9Ê61Â-Â!£)‰)‰2*>h•≈&gks1oo0o0s0˛os0oo0os0s0o0o0sQoo0s1sQos0s0sQos0o0sQs0sQs1s0o0s1osQ˛s0o0o0s0V(VRIΔRV(Z)V(MÁZ)^JZ)^JZ)bk^J^J^kZJ^kZI^k^kV)^K^kZ)^j^JZJ^JZ)RZIZ)QÁV^J^JV(^JZ)båZ)^J^kbk^JbkMÁ^kMÊZJV(fçZIjŒZJ^k^kblZJZ)I≈RI«E»"!C"‚"!B)d"C#C#!Ñ)§Ñd§Ñ%ƒ2Fâ>GJ©JM≈R-VMR,R-wìwìNL> -™)™)â-™-â5™1â=Í¥{ìjÌRLF F,F J+F
  972. J F
  973. B
  974. 1â1à-à1à-à2-à%g!hH!h!H-®5…B
  975. F+J+N+N+9™=À= AÎAÎAÏ9À9Ï9Î9Ï5Î> F,Vm^mbm^LZ,wr{ì^åRnBBB F.J.N.N.RNwì{ìsPb¨VlVLRLRL˛N+WN,=ÀAÎ=ÀAÏ=ÎB F JMNLRMR,VMRMN-=Ì-e¬"#""-Ñ)Ñ%É)§c!§%£!§%ƒFi2>h.≈≈"%E¶JE•R(NV)V(bå^JVZJ^JZI^kZJZI^kV)Z)bçRRfå^J^kfåbå^kMÊRMÁV)bå^K^J^k^K^k^Jfç^l^kZJV)IΔrR    MËE¶NI«IËI«R    E¶I«ZLMËI«MËR    IÁR
  976. R
  977. N    N    R    R    V*I«MËfØR    MËN    ^lV+N    ZLR*VKR    I«R    A¶ZLV+R    E«A¶R    E¶=ÖZLMÈN    R    R    R*R    IËN    V+V+R
  978. V+V+R*R    I«=d=Ü=e!B"‚%C!C%c!#%C""BCB)§cd!Éd)ƒ)‰!£)‰!√A¶E•N    JRMVL{¥sQN,5À-™-â-©-â1™1©=ÎVm{≥wìNK=β9 ,9…9…5©1©)h-à)g)h)g-à%g!h(HH!hH%h-à5…9…= 5©5™5©9 9 =À9 9À1 5Î5À5À1À> F R-VM^M^l{¥wr^çN-˝BfJ.JN.Zlwì{ì^ãRLJ F F EÎEÎAÎB =À=À9 =À9À=Î9À9Î9Î> B FF J-AÌB.-" ¬ ¬ ¢‚!C""%c)c)Ñ!c!É!É!£!£%ƒ%√Jâ)‰!ƒ§Ö29f9e=Ü=ÜIËMËIËI«R    I«I»MËR*IËE¶MËR    V+MËZlV*R
  979. =eR*I«EßI«MÈZLMËZLEßI»ZKV+IËV+I«R    =Ö^m^mVK^mZmIÈI…=ÜAáV,IÍR+A®N
  980. IÈ=áIÍI…=áE»A®E»^èR,=áN IÈIÈE…=á9fR+MÍE…AáZnE…IÈI…=áE»A®A®E»=ÜIÈI…N
  981. =Ü=áE®=áE»R N E…A®N N IÍIÍVMN IÍN R,R+N
  982. R+E»=Ü=Ü!#"")c!""!"%c!CC#C)§!c!É!ÉDd!£!§dƒI…MÈQËFN,sQwìo1J,5À-©-™1©1™1™5™AÎgwìo1AÎ5™1â1©1à1à)h)à%h)h%g%h%g%h!g!h˛HkHH!HH!h%g-à1à1©1â5©1©5™5™5À1™1À5À5Î1 5À9ÏBJRNZMjÔwìwìZmN.BFBJ.FJ.RMbÆwìsRVLF =ÀAÏ=À=Î5™9À9 9À9 9À9 9Î5 5 -™-™1™9Ï9Ï=Ï=ÏB>Ae ¬¬‚Ç%C)d!"%C)c%c%c1≈!c-§!É%§%£:'-‰:&§•)‰>5fA…5fA»=áE®E»IÈE»E®=f=áR,I…R,˛I…A®AáE®˛IÈI…MÍIÍR,IÍIÈAáN 1$I…R,E»A®^nE»N IÈZnR,IÍN |5E9gR,A»9áIÈEÈ1EE…N,IÍA®A®A»E…EÍE…5f=á^èR,R,N IÍE…5fN ZnA®9áE…E…IÍR,N IÍE…IÍ1%E…J
  983. IÍJ N IÍJ E…EÈ=®J IÎJ =áE IÍE N IÍE EÍN A®J
  984. =®=áA®9Ü1e"‚‚ ¢"%C%c")c-Ñ%Ñ%cC    DCÉD§1f9f9eAÜMΔR-wr{¥^çF 1™1™1©5™1™1™5™F sQ{¥NKAÎ-â1©-à-à%g%h!G!h!G!hG˛HO(((H(H(HGH!g)à)á-à-à-â-à-©-©1™-™1À1 1™1™=ÏB J.N-Zms0{¥jÔZnJ.J.FJ.FJ.FRLk{ìfÔRLAÏ=Î= =À5©1©1â1©1©5 5™5 5™1™)à-©-©-™1 5À5À9Ï9Ï>=f%$‚ ¬¬·)C!C%c˛%C:)Ñ"-•5≈!É!É>'ÉddÑ>GFà1f5g)$„5E9fA®A®1ERLN EÈ9fE…9Ü9fA»VMA»9fA®E…1$A®VMIÍE…A»A®N E…=®VMVn5EJ R,9gA…VMIÍJ E…IÍVMA®9N 1E5F=á5fEÍJ 1F=®RMA…5fN 9áJ =®A…5fJ EÍN,ZoN,IÎA®E 1E9àN,EÍIÎ5f=®J ZnEÍ=®-$R,A®=àA…A…E =®A©RMEÍA…A…EÍN RMN,IÎN,J N,˛EÍ<-$5fA…)9f5E-%c ¬¬‚‚"!")d%C)d)c%d%c)Ñ#$$    $Ñ%§=®A®E®I«J VL¥{¥VLF =Ã9À=À9À9À1™9ÎJ+{ìwìNL9 1©-à-à%g!hHHH˛H
  985. HH((((HH(H(˝H%h%h)à)à)â)â-™-™1À-™1 1™5À=ÏF.FRN^m{ìwìfŒZNRON.N.J.N.FJ-R+¥{ìb≠J,AÏ=À=Î5™1™-à1©1©1™1©1©-©1™-©-©)©- -™1À1À5Ï9Ï>.5 -)"Ç"%C"!C)d%c%c1≈)Ñ5≈cÑD%§!£21Â=à5áA 9à=®=áIÍ9áA…9áJ
  986. N N,1EA…EÍN 9áVMEÍJ A©N 1E=®=®N,=®A…J IÎA…9àEÍEÍ9áA N =©N 9àA…VnA…=®A… u1EJ )=®1F9à=®=…1F9àA =®5gJ =©Vo=®=©)$‰=®J =…9à5gF =©)=®EÍA…=©-%1F1FRM9à9à5áAÍ=®9à=©A =©9àJ ZèEÎEÎ=©J %N-RMJ 9®9àRMRMF N,5g¢J 9á1E „)‚¢ ¬ ¬·%C)c%C)c""#„    C!Ç9®IÍ=á=áV+BbŒwìsQR+FAÏAÏ=À=À5™1™=ÎVm{¥srF 5…-à-à%g!H˘('˛(0('H'HGHGHH!h!h%â)â)™)©-™-™- )©5À5ÀBFJ.RNb≠wì{ì^lZOR.RNR.R.FFN-^ç{ì{¥RKF =À=Î9 1©%à˝)àV-©)à)©)à)©)©-™)©-™1À9Ï5Ï:>.5f1%1E"" ¢‚¬‚ ¬‚‚!")c)Ñ1•!cB$    d)§-ƒ:5g5fA…5g=©J A 9àA 9à1F9à9à5g5g-%A J EÎ-%EÎEÍ=©A…A 1E=©5gA…9®9àA J A RNRMJ A =…N J EÍ√=©N,5gRME)%=®EÍ √1F)1F1EA…)=®RMA 5áA…5áEÎ=®J =®-%5á=©=©N-9à=…EÍRMJ J =©F 5à=…^∞F A…9®AÍEÎA AÍ1fEÎN =©EÎb—EÍ=…A =©-&9àVnJ 1g=©9àA EÎJ 1f-%5g1E-%5f!$˛‚=¬¢‚"%C!")d¬ „ ¬ „ „$1•5«5áR-R,IÈ9dJMk{ìfŒVMJJEÏB 9À5À5™B oQ{ìgF 1à-à%g!hH((((H(H(((((('H(H¸H'!h!h%â%â%ä%ä)™)™- )™1 5Î> BF.J.ZnjÔ{ìo0béZNZOV.VNN-J-FRMfÔ{ìwrR,AÏAÏ=À5 -à%à%h˛%àV)à)©)â)©)â-™-™- -™9Ï: >.>->)5f)))c„"¬¬‚ ¢¬ ¬")c%cB##c)§5Ê5Â9»9á5gJ J J 1fA…=©A EÎEÍ9à5g=®AÍ=®¢9®J N-=©=®9à9à1FA A…ZèJ 9à-%9à)A 1F9àA©=©EÍ9àNMEÍ9à9àJ N,)#-$¢-%A…9á9®9á=®=®=©-%$‰9à)1FJ EÎ9®A J EÎ=®9àN,A J A J -%EÎJ =®9àA 1F9à˛A…Q9àN,AÍ=©A N,-%$‰1F1FJ N,5àNM=©EÎ9àJ Zè= EÎ5àA AÍ=©=®9á=® „5f-‚"!" ¢ ¬¬!"%C!#"¢ ¬ „B)Ñ5gJ 9á1$9f=dF {ìwì^mR,R-N,N-F AÏ9ÎB NKwr{≥RK5©-à)g%gG((('˛((˛('('H'H'HHhH!â!â%ä!â%ä%ä-™)©-™1 9Ï> F.FJ.VMwrwìnÔbnbn^NZNV-RMN-N-VLs0wìb≠J AÏAÎ=Î5©-®%h%à!h!hH%à)à)â%à)â-©-™-©1À9Ï>>B/5©5f1E1EÇ-$"‚"%C%c!"¢¢ ¬" ¬ „-§-§1¶9á$„A…1F$‰5g1F5g)%-%-%A…A…VnF A EÍ1EA…-F%9à=©A )A…EÍ1F=©=®5gA…5g-%9àJ 1FJ J J 9à-FN,EÎ9à-%9àJ tN 5gEÍ5g=©=®9à1FEÍ=©N,9à1F5f9®=®A…1FA…=©J EÍ9à1FJ 9®1FÇN,AÍJ 9àEÍ=©5g=©Vn=©A A…J 9à=…)EÎN,J 9àA A…EÍ=…=…5gA 9àEÎ=©N-=©J A…5g=®%=®EÍEÍ √9áA®‚"‚¢!B!C"‚ ¬¢""°)f9hRnA EÍA®=ÜIËRK¥{ìR,ZMZLZMVLRLJ,J,NLfÏwì¥=È-â-à-à!gH¸(H˛(H(((H˚H!i!h!ä!â%ä%ä%™%ä)™)ä1 5À9Ï9ÏBBJONN^é{ì‘^nbébmfébm^mZlZmZlfÏ{ì{¥ZlAÏAÎAÏ9À5 -â-©)à%à!h!i!h)â%à)â)â-™)©-™1À>>>.>.9á¢9g5f=á b5f#"%C")c%C!C¬¬ ¬ ¬Ç √ ‚!cB5ß=©1FJ 1F=©9à9àEÍA…N-A =©)A N J EÎ=©=…1fA…A…=©J J 9à=®A…5g)N,Vè=©J A…=®=©A -%1F1F9à)1FN,Zè=©RMA     QA…9à9®5á=©AÍ9à5g1F9áEÍA…9àA 9à9à=®9à5g5gAÍN,1FJ EÎJ EÎ=®£RNEÎVoA 1F1FAÍEÎA…A EÍ)%9®N,EÎ5g=…=©A 5áEÍN-J,9àF N-Vn-&-FEÎEÎ-%=…=©EÍ1F1E)1f1EÇA…5f)D ¡ ¬!C!")C‚ ¢˝·5®J EÎ5àEÍA…5fN NJ    ‘wí^ØbÆfÆbÆbÆ^ÆZÆVéfÔ{ì{ìV≠˛-à%g!H'('˙(V(('''H'H(HH!i!i%ä%â)™)™-™)â)™- 5Ï9Ï> >B.BRnZç{ìwìjfœjÔjŒjœfŒfœbÆjÓwì{ìo1F AÎAÏ= 9 1©-©-à)à%h%àHH!h%â%â)â)â-™)™1À5Ï:5Ï:5à$‰ „$„%$„ A=ß)D%c!C!""!"!C‚˛‚-F9á=©9á-%A…9à-FRMJ =©9àEÍ9à9à-FA…=…Vn˛=©A 9®1FAÍ5á1f1F9à=©=®EÍZè9à-ERMJ 9®5á5gRM=©Zè=…9à5gEÎ=©EÍA =®A…1F9à)%5g˛=®k-%9à1F1FJ J N,=©9àA 9àA 1F9àEÎ5g5áJ J 5g%=®%A…AÍ5g%5g=©%J Vn%9àA…J N,J A AÍ5g9®A AÎ=…)1FEÎJ J A 9®=®N,N,A…EÍ-E=®9á-% „9á5f5g%E¢ ¬¬"%C" ¬!C)e=©VNZèA N,N,9àRM5EA¶N+^–{¥{ì{¥{ì{î{ì{¥{ì{¥{ì¥b)h-à1â-à)gGH˛(,H(H(I(((''H'H(HH!i!i%ä%ä)™-™- )™-™)©1À9Ï>>B.BB.NNZé^Ø¥wì{¥{ì{ìwì{¥˛{ì+{¥oRAÏF F AÎ=Î5 5 -®1©-à)â%à!hH!i!â%â!â)™)™-À-À6 5Ï5Ï5Î9Ï)$9á¬A®1%%b$„$„-d")c)c!"˛6"#1f9á1FN,N,9à9®N,A…Vn-%9à=®AÍ1FEÎ1gEÍ=®5g5g=©A A 9à9à=©9àJ J 5g5g9á1F%=©N,)-EA J J 5à=©1F1FEÍA J,=©A 9àAÍ1E=®J 9à5f1F9àA…9®EÍ5f=©1F „=…A =®J N,˛=©R)5gJ J EÎJ J 5áA…AÍEÎAÍA A©EÎJ 5g9à9à5gJ A…=®A…RMEÍF A A…A…A J N,5gAÍJ A J,1F=®F 9à √%A -%1F%5g1F9g)9áE…1á%$%E-d!%‰%$1fN A©=©N-N-Rn1gEÎ1F „EÍ=ÜB
  987. B ZÆkgkgkf˛kNL)h1à1©-à-à!GH'((H(H(H(('˛'''HH!i!â%â%â)™)™- )©- -™1Î5Î: : B.>>->JNRnRn^Øo1ko0kokoko0^ÆAÏF FAÎAÎ=À9 -©-®-à)à%h%à!hhH!i!i%â%â)™- 1À- 1À1 1À5Î√ „9®¢ √ √-$¢$„¢1E%#)D%#)D!#-e%#)$$„=®1f)A J EÎ%=©1f%A 5gRMRMVnN,EÎA AÍJ ZoZèA =…A…=®=®5g9àJ 5f=©9à9à1F-%=…5á9à9à5g=©
  988. 9à5g=©9àA 1f$‰A…J VnEΣ)1E5f5f9à1E1FA =©N,5á5á-E ‰=®-%√A…=®ZèJ N N,9àEÍJ =©F 9àA 9à=©A AÍ9à=©EÍN,A 5áAÍ=©A…9à1F1g √AÍEÍ=©N,N,A J J 9àA EÎEÍEÎ1FEÍA EÍ5f=©A…EÍ1F9á5fA 9à-%J A…Vn=®EÍEÍ9à5á5á-F^∞9à=©NMVnJ A A…RM=®9Ü5®B JLJ,NMN,NMN,NLJ,J,=Í1©1â1©1à-à)g!h(((H(HHIHH'(˝':HHi!i%ä%ä-™-™-À-™- -™1Î5Î: 9ÏB-B-B.:>.B-NnRnVéVmZmVlZmVlVmVLVmRLFAÏF B AÏAÎ9Î1©1…-®-©%à!hH!iHii!â!â%™%™)À)™-À˛-™1À=…-$1%5f5f)) „9á5f√1E-A®)1$5f1E-%5á √RM)%5gJ N,˛A +N,5g9à ‰A EÎAÍ=®9®=®%-F=©RMN,=…=©5fJ A 1F-%9àJ $‰RMEÍEÍ%F
  989. =®-E9àA…A 1f5gAÍEÍAÍ%1F9à=®y9á)1F9á1E1F1F-$¢ „-%=®9à5á5g9à=®5á-%IÎ5gEÎ9®9à-&A 9àA RMN,5g=©9àEÎA…=©9à=®A 9®RMA J 1FA…A…J EÎ$„EÎ9®9®EÎN,=®=©EÎEÎJ J EÍA =®J AÍ9àJ N,N,9á5á9à)9à-%9á-%1F1F)%5g=©$‰ZèEÎ9©b—)&R-J EÍA -%=©9à=®)©1 1 9Î9Î> 9Î=Î9Î=Î1©-â-à-à)à-à%g%h(((H(HHI˝(˝$''H(i!i!ä!â)™)™-™)©-™-©1 5À5Ï5Ï> >B->>: >B-FNF-J-J-N-J J,J J,F ˛AÏc=ÀAÎ=À9 -à-©-®-à%h!hHhHhHii!ä%ä%™!ä%ä%ä)™%â)©-™5á-%A…9á=®-$-%) √5f%$„Ç¢¢Ç-%-%$‰^∞5á5gZè%VnN,9à=©5g=©9àA EÍ5à5á-FZè-%=®1g-&=©9à5g9®AÍ1E√A©=©9®)A…5f-&A =©)=©5áEÍ=®EÍ9á5á9à1F1F5áA =©=©A c9à1f=®A =®1f5g9áJ =®-%A N,=®9®9®N,EÍJ A…=©=©VNJ 9àEÍ)1GEÍZèRMA…EÍJ EÎ9à=©5á9®EÎZè-%=©-%J N,=®Zè9®=©EÎEÎA EÍJ A EÎ=©EÎAÍF =©N,A…J 1F=…J Z∞VnEÎJ EÍ)%=…EÍ=©EÎJ AÍN,=©EÎEÎRN5gEÎA -FA RMRN=©5g9à=à)âä%ä)™˛-™-©-©˝)à,%h)à%g!hHH(IHIHiHH(('('''HHi!i!ä!â%™)™-À)™- -©1À1À5Ï9Î>: >->>-: ˛>E5Ï> =Ï> =Ï=Ï=Î=Ï9À=Î9À=Î9 =Î9 5 -©)à%à)©%à!hHhHiHii!ä!ä%´!ä%ä!â!ä!â%â%â-™A»)9áEÍJ EÍ1F=à1E¢9á=à-%5f1f9á=©5g=©A N,1F9à9â-FEÎJ N-A =©˛A 'N,N,5àN,N-=©5gA AÍ-%1F9à=©F =®Vn9á9®1FN,5à1FN,A =©1F9àA…J A EÎ=©9áA =®EÍA…A N,N,bA…1E „5á-%9à-$ √EÍA…5f „-$=®1F=©EÍRM5g%9®A…F =© „RMN,1F¢=®=©J 5áA…EÎA…-FEÍ5g)$‰=©1g5gJ 5g √-&A…1gA A…=©A AÍJ A A 9®EÎA =©1g9à=©=©)-FÇA EÎEÎEÍN,-%5gAÍN-AÍN,J N-)%J RN9©Vnb—J A =…A A…EÍ1F1E1©äj˛%ä2%â)â%h%â%h%â!h!h!H!hHH(H(IHIHH((''((h!i!â!â%™%ä-™)â-™)©- -™5À5Î: 5Ï: 9Ï>9Ï˛: q5Î5À1À5Î5À9À5 9À5™5 5™5 1©5 5©5 -®)à%à%à!h!hH!hHhHiHii!äi!j!i!iH!i!i%â%àA…5á √¬a1E=®1F1F9á „)=®=®9à9áJ A… √=®AÍ5gN,VnJ A J A N,N,=©9àJ AÍN--FAÍA…A…9à5à$„=©A )1F5g-%=©A…N,1f5g9à-%5á9à=®5f)$5f1F=®9à=©=…9à%EÎN,9à)A…1E-%1f-%5g% „=®˛5gEÍ=©9à-%A…5gA =…)%Vn5g5g=…9®9àRMJ A 1F1F-E=…=©EÍ9à=…A…EÍN,EÍ5g5áRMJ )%J EÍEÎA…A…A =©RMAÍA…=©=©A =©J EÍEÍA 9àAÍ=©9à=©9àA ZèA EÎJ EÎEÎN J ZèRMJ N-RNA 5à5hJ J AÍA =©=©9áEÈ¢%âä!ää!ä!ä%ä!â)©!â!â!i!iHiHIHIHiIiIIHH(('''((ii!â%â%™%™)™˛-™1 1 5Î5Î5Ï9Ï: : >˛: :5Î5Î1 5θ1 5 1©1 1©1…1©1©-©)©%à%à!h!hH!hhihii!i!â!ä˛iO!ihih!â!h!â-FA…9á5g1f$‰ „EÍ1E9á9á9à5g9®9®EÍEÍJ EÎEÍ9à1g$‰5g9àA N,RMA AÎN--FN,A A EÎ9à=®1gEÎ=®-%5gJ A…9á9á%-%EÍ1EF 5g9à1F1gA©9à9à9áEÍ9á5g9à9á=©EÍA…-F=©A =®9®f5g-%-%5g-%)%A»)$)5á5g9àA…=®5á1f%=©A…9®5gN,EÍ9à=©-F-EA A…EÍAÍ=®1fJ 1fA EÎA…EÎN,9àN,)9à1FJ 5g=©=©F A =©9®N,=…5gA…-FN,F AÍEÍ=®EÎ1Fb—RMEÍAÍ9àgA J VnN,F N,N-N,F VnJ 9àRMEÎR-A A EÎJ A A…=©=®5f5f!H!äi!äi%ä%â˛1 (%âii!iHIHiHIIiIIHH((''''HH!i!â%™%â)™)©- -™1 1 5Î5Î5Ï5θ:     6 : 5Î5Î- 1 -™-©)©-…˝-©-à)©%à)à%à)à%à!h!hhH!hHhhiHiiäiiHIHHH˛HI!h „J A…E 5á1FN,)9à=®=©9à=®=®9à=®EÎEÎ5g=…A RMJ 9®A A AÍJ J A N,EÎ9®J 9àRMZéJ J =©J 5g=©A…EÍA…A…9á1F5á-% √=®9à5fA…5f)EÍ-%1F=®9®5g9á9á9àAÍF EÍ9àEÍJ k)9àA…1E5f¢A…1F9á5á1F1FA…5g9®A…J J =©=©=®J IÎJ,RMN,EÍ=®9®=…A…A…)F J EÍ=®EÍN,5g=©1FAÍ9à5á9àA N,9®=©EÍ5gA A 5àN,Vn1F)%1g9à=©=©J A…A RMA EÎ9®5gJ 9àRMZèRMRNAÍVnAÍbÚN A RMfÚJ A F N,J J ZèEÍ=®A…9f!ã!ä!ä%ä)™)™1À1 9Ï9Î5Î-™˛1 %%âiIiIjiiHIHH'(''''((Ii%ä%â)™%â)©-©1 - 5Î5Î: 5Î: : >˝: 5Ï5Î1 1 -™- )©˛-©)©-©)©)©%à˛%â    %à%â!hhH!hh!hH!i˛iUjiiHIHH(H(H(%â5g1F9á5f5á1F)=®-%9àEÍ=©=©=…=©A R-F 1gJ ZèJ N,N-F A EÎRMEÎA RNN-EÎEÎ=©)%A -%=©ZèEÍ-E9à=®EÍEÍ9á9®RM9à5gR,=®%1EA…=©A©5g)%)%-%J 9®9à9à1fEÍA 1gEÍN,=®
  990. 1EEÈ1E1%5g-%¬˛1F$9á9àA…5á=®1F1fF A EÎA…=©AÍRMF 5á9®5g5gA =®9à9à ‰1g)%5g1F9àA 5gA…EÍA 5g5g9à˛A E9àN,9à9®5g9àJ J 5gN,5gEÎ)F 9à5gJ EÎN,Vo=©J N-AÎA N-RM= A =©9®A =©EÎJ F 9à=©N,9®J J =©9à5f5e!ä- - 1Î1 1À5À5Ï5Î9Ï9Î9Ï5À5Î5À1À!âiIiIiHI˝(˛'((HHi!i!â!â)â)â-©-©1 1 9Ï˛5Î: 5Î: 6 5Ï1À1Î1 1 )©)™)â)©)â˛)©    )à)©%à%âH!hh!h!hh˛HhHIH˛iUHiHH(H'('''1à5á)=®-%A…A 5g9áA 1f9à=…A…1fA 1g=©9à9à9®EÎA…= EÍN,9àN-J EÎ=…A AÍF A 5à9à=…=©EÍ1FZèA…1E-$1FRMEÍ)-%9á5á9àEÍ)1F5f5f5áEÍ=®=®-%5gN,5g9á5gA…5gEÍEÎ-E9à)$„5f9áA A…9á9à1F-E=® „RMRMJ A $‰EÎJ J EÍ-FA…5g9à5áRM=©=…A…F A EÍ-%5g1FN,5á=©9àJ 1FZèN,=©-&J 1FA EÍ5gJ 5gRM=©5g$‰N,9àEÎ=©9à5àVnF J,J N,RNVn)%N-F J RnEÎZèA N-VnJ N-AÍA =©A 9à5gZèA N-=©9à=à9á5e6 9Ï: 5Î: 9Ï: 9Ï: 9Ï> 9Ï: 9Ï: 5Î1Î!âjiiHiHH(H('((,!h!h%â!i!âi!ii!â%â)©-©1 1 9Ï5Î: 5Î: 9Ï: 5Ï6 1À1Î1 1À- -™)©)™)â)™)©)©)â)©%â%â!i!iHiHh¸H[IHiijIiHH(H'('((F
  991. 9àEÍ9àAÍA©A…¢AÍ=©A…EÍA J,5gRMZèN,F =©J =©J 1G9©ZèEÎVoEÎA AÍEÍAÍ=©J =©%9®$‰1F-%1F=®9á9à-%-%EÍ9à1F1F%5gEÎA…1F9à=®=®-%5g))A…=©EÍ=©9àA…1F5g5g=®J 1E1E5f1F1E9à1F=®EÍ1F1f1F)%RnEÍ5gF EÍ$‰√=©1FAÍ1F£9á5g=©AÍA…9à=©=®N,=©J J EÎ9à9®=®5g)9àRMEÍ)A EÍJ 9à1F%A 5áRNEÍRmRM9à-F9à1fEÍJ N,1FF J RMJ 5àRnb—A J EÎF RNN-EÎF EÎEÎ1fVèR- √9à5à-%)=©=®5f)$>> 9Î9Ï5Î> 9Î> 9Ï> 9Ï: : > 9Ï: 9Î- iiHiHH(HHHG!hG)à)à)â˛%â
  992. !âH!i!h)©)à-…1 5Î5Î9Ï˛5ÎÏ5Î5Î1 1 - 1 -©-™%â)™%â)©%â)©)à)©%â%â!h!iHhHH(HH˝HZiIiHH(H'('(''''!GA…=®)9á=®J EÍ-%J N-9àN,EÍA N,J J EÎ=©N,A ZoRM ‰EÎ1g1F9àRNJ AÍ1gJ =©EÎEÎ=®9à5f=©1F9á=®5á5g=à=©9á5g%5áA 5á9à¬=à9à-E-%-%=®%9à5á-%9à=®=©5g9àEÍEÎA…1E5f √-$%)9àÇRL5á=®=®)9à9à=®J A…N,-F=©5g=©5áRM=…E =®1f1g)%EÎ5g=©F 5g=®=àA 9®9àEÍ5g1F5gJ F J 9®=…EÎ=©AÍ))%9à$‰√5g9àVnA AÍ-&5g=©A )RMN,= AÎRMJ N,J A A N-N-EÎJ RMJ =…9àEÍJ A…J N,1g)$„EÍ$„B-> : 9Î: : > 9Ï> : >: >-> >-: : 1 !âiiHIHIH!à%à)à)à-©-©1 -©1 -©)©!à!â!h)©)©-™1 : 9Ï: 9Ï6 1À1Î1Î5Ï1À1À-™- )™-™%©)™%â%©%â˛)©˛%â!âii¸H_IHIHiIiHHHH(H'H'''''''H √-%-E√=®=©5á=©EÍ=®=©A 5gA J N-EÎN-J EÎ=©A A ZoJ RNEÎ9à1g9®Zo9®A…J J R,EÍ-E=©RMF 9®=…A…9á5g9á=®9à5f „A…¢EÍ9à¢)$9à=©A…)5g)A©=©A…=®=®1F=®EÎ1F=…b5g9á „-%9á5f √$‰9®)EÍA AÍ1F)EÍAÍRMRM=®A A 9à)9à5áF Vn9à5g5g=©%1FN,5gA…5g=®=©9àA…9á „F J 1gA…EÍN RMEÍ9à=©EÍ5áA 9®9à¢=©AÍJ VoR-J AÎJ RNAÍ=©=…NMJ J F A =©A EÍ9àAÍ-FZèA =®EÎA =©J =©RM=®¢1E5®> 9Î: 9Î: 9Ï: 9Ï> : > : >: >9Ï5Î-™%â!iiHiH!h%á-®-à1©1©5 5 5À1 1 )à)â!à%â%à)©-©9Î9Î: : > ˛5Î6 1 5Î1 - ˛)©%©!â%â!â%©!â˛%â!à%â!i!i˝HaHHHIHIHiHH(H'(''''''''%hA…A…=®A…A =©1g=©A A =©J =©9àEÎA 1g=…-FZèA =…J EÎA RM=©ZèJ 1F9à9àA…9à9àJ RM „1EF
  993. =©=®=©-%1FJ J =®=®%)))$EÍA…5g5á1FA…A…1F=®5gA…-FEÍJ =©¢A…A 5gT£5á9à1F9à1EA…1E5f=®9á5g)%A…9à5gA 9à √J RM-%A =®=®9á)%1F-%A 1g5á=…=©9à5á-EA…N,=®=®5áJ =©5g=©RM9à=©=©A…£9àA 5á%Vn9®J J Vn5h-&RM=©N,J 9à=©EÎVnN-9à=©RnJ N-N,A VoJ RMJ A 9®˛A $J,5gVnN,9®-%9á$„1à> : : > > B->B-: >: >> >-: : 9Ï5Î1 )©!i!i!h!h!g)à-®1…˛5 5Î5 5Î1 -©)à)©)à)©)©1Î5Î>: > ˝: i5Î5Î1 1 )™- )©%™!â%ä!â%™%â%ä%â%ä%â%â!â!â!iiHIHHHIHiHiHIHH(H'H'('('''(''(J
  994. 9®1f5g=©EÎEÎ5g9àA EÎJ N,=©^∞J N-N,RMA N-9©J J =©VnRM9à=®F 5á9à1FA…9à9àJ,EÍ-F „9à9á1F9á=©=®=©$„NMEÍ-%1F5gA…A…˛1F9®=®9á9à9à=©9à √A…J -%EÎEÎ=©i5f√9á-%1f1f=®=à9á1F5g5g5fN,A 1f=©F $‰=®EÍ=®5fAÍ=®-F=®=©A…RM)EÍEÍEÎ9áVnA…-%5á=®=®=©A…=©)=®9àA =®=©A…1F-E5á5áAÍA…J AÍJ VnN,1FVnJ RMEÎN,N,N-Zè=©RMN,AÍAÍVnRM5àEÎN,N,Zo=©9àAÍ9àN-5à5g=…1F9áA…5g1F1à: 9Î: > >> >> > ˛: ,>: : : : 1 1 -©)©h!h!g%h%á-©-©5 5 5Î5 5Î1 5 -©-©)à)â)à-©1 9Î9Ï: 5Î9Ï5Î5Ï1 5Î1 1 )©%â)â)™˛!â%ä¸!â%â!â%â!hiHH˛H`HHIHiHHHH'(''''''''''IA…9à=®EÍA N,)%VoEÍ5à=©RnJ 9©N,VoN-Vn=…N-N-A ^∞=©=©J,9àJ =©F A =©9à)%EÍ9á-%VnEÍ „J 5á)%5f „5á „5g-E5á9à9á=®=à¢9á=®1fN,=®=©A A…A…1F-%RMA…1FEÍ=…j1f¢9á1F)=®A…1FA…EÎA…9á5g$‰N,F 1FJ 5g%AÍ=…9®5g=®RM1g5gN,A…J =®5g5g$‰-%A…EÍ5g9àR-1f=®EÍ-EA EÎ1F9á5f9à5gN,%9à$‰EÍ=©J -F-FEÎ5g=…9©J A RMJ 5gA 9àEÎA AÎRM=©A )%A -%%J )%N--FA =©EÎ5g)-%1F5f9á1E9Î9Ï: 9ÎB> B-> B.>>˝: "9Ï: 5Î5Î1 1 -©!àG!h!g)à-®1…1©5 5À9Î5 5 1…1 1…1©1…1 1 5Î9Î: 5Î6 5Î: 1β1 x-™- )©)™%â%™!â%ä!â%ä!â%ä!â!ä!â!â!i!âiiHIHiHiHiHiHHHH'H'('('''('('H!=à9áAÍ9®1F=…5g9®A 9àEÎ5hAÍ-FJ )%-%J -FN,=©AÍF N,9à1g=©A AÍEÎJ AÍJ A…)%)5f-% ‰A…1% ‰=®9à5f-%9á-%%$„)%É)1E1E%¢£5gJ )5g9á=®A…%9à5g-%IÎAÍ9á5f1f1f √EÍEÍ))$‰EÎRmA -%1f=®9à5á=©5g-%-E=®EÎ$„A N,1F1F√˛9àL=©9àEÍ=®=®1f5g5g9àA©=®=®$‰=®5g9á=©9à5áEÍ5g-F9à-F1F5gA -FEÎA A 9à=©1gJ A EÎF F =©RM)%N,J J EÍ=©F =…-FA 5áAÎ1F)%J N,EÎA…5f=®1F-$: > 5Î: > >> >->B->>: : ˝5Î*5 1 1©-®!gHG%à%á)®-®1…1 5Î5 5 1 5 1©1…1…5 5 5Î5Í5Î1 1À1 1Î-™- )©)™%â)™%©)™%â!â!â%ä!i˛!â?i!â!i!â!i!âiiHHHHHHHiHHHH(H'''''''''''''H(5f-E5gEÎ9àA J EÎ=…J %J EÎJ J =©EÎ=©1gA =©F 1g)RMN-J ˛A *=©9à=©=®=©A…1F=®=®5g=®9®9à¢)$5f9á9á-%EÍ=© „9á5f1FEÍRM=®=®5f%=®9®1F9áA…EÍ-F-&=®=®=©J gA…5g=®5g) √A =®9®)%)5g5g=©5áA…=©5áN,=®1FEÎ9á9à9à-%=…5gA…N,%9®J EÎ=©5áEÍ5g9á-%-%J A…5g=©=®5gEÍ=©9à5g9®)EÍ=©A…F A J =©J 1FRNEÎJ AÍ1F=…Vn=©RN5àRMRM5g9©1gN,ZèEÎ=©=©VnEÍN,J N-5á)=…J A…=©5g1%1à: 9Î: 9Î> > B->˛B-> > ˚5Î
  995. 1 1©)á%à!g%à!g%à)à-©1…˝5 5Ͳ5 Í5 5Î5Î: 5Î1Î- 1 - )™)©%™)™%™%©%™!â%™!â%™!ä!äi!äiâ!i˛!âiihiHiHiHiHiHiHH'H'''˛''H˛'KHHhA…AÍ-%AÍN-=©RM1gRMN,1F=©1gVnVnRM=©NMVnN-N,J A =©-FEÎN,A J A…=®1g5gA…9à=©9®=®)A…=®=©A…=®1F9á=®9á$„EÍ9àJ
  996.  „A… √9àJ J 5á9áEÍEÍA =©9àEÍ9à9àZnEÎA EÎAÍ1E5f5g9á5f1F-%=©1FA…EÍ-%=®=®%=® √1FEÍAÍ9àA…N,N,-%%1F=®5gRN5g9à9à1F=®9à5g=©5g)9àA…=©=©1F=©A…A…1F=®9àJ 1f1F=©A…J EÍ9àA RMA 5à^èJ N,N,-&-&5h1gJ 5à5gF =©5gR-=©A 5g-F1g9®9àJ N,EÍ9àA EÎ9á=®5f ¬: 5 9Î5Î9Î9Î>: : >B-> : 9Î: 5Î5Î1 1 1©-©)à)à%g%à%á%à!g%à)à-©-©5 1 5 1©5 1 5 1™5À5 : 5Î5Î1 )™%©)™%â%™!â%ä!â%™!â!ä!â!äi!äiä˛i:!âiiHiHHHhHhHiHiHhHH(H'''''''''''('HhA…A…J )1F5g5hEÎ5à5gRMA 5áN-9àJ =™9à9©A EÎRMN-˛A .EÎ=©A…=©-%A…=®9à5á5g5f=®A…¢=…1f9àEÍ9à1F9á5á)1F9á9áA…5g-%Ç$„EÍ9á)$-%)1f9à)%9áN,-%9à=©A EÍJ 9á5gA…1%5f5á1E9áAÍ)1fA…-%%A…5f9à) ‰A…=®5g=®N,N,J 5gA -%EÍ9àEÎN,9à%=©9á9á1F1F9á-%9à9à5g1FEÍ5fJ J A…)VnN,=©A…AÍ1FAÍN,J EÎ9à9àRMA A ZèVnAÍ5g^∞^∞J 5áJ F 5àEÎEÎ9àJ =®9®N,9àA EÎEÎ5g9à=©A…A…9f1™9Î5À5Î5Î: : > > >-> > 9Î: 5Î5Î1 5Î1…-©)à)à%á%à!g%à!h%à%á)©)à-©1©<5 1©1…1…5 5 5Î5 9Î9Î5Î1 1 )™%™%â%™!â%ä!â%™!â%™!ä%™!â!äâ!äâ!äi!iiiIiHiHiHiHihiHiHHHH'H'H'''H˛'BH(H(hA 9à=©VèN,A 5àb∞^∞J,9àRMEÎ9àA J =©J 9àEÎ^∞J EÍEÎA 9®1FAÍJ J EÍ=®9àEÍZé-E$„5gAÍ=©1F1F1E=®1F5f9à5g)$=®9á1FA…EÎ5fA…1F9à=®5g1F9á˛1F9à)A =®EÍA N,=®1F)1fJ )A…1F)A…5g5g-%A…9à1f1f9á9áA…=®9á9á=®9àA…J,=®9à-F √J EÍJ A…9áEÍ5g=©9à-%-$=©1FJ 1F)%=…=®9á9á9àA…)9àEÍJ 9à9à$‰EÎ1FEÎAÍEÍF EÎ$‰A ZèR-5à1F9àA F =©EÎEÍAÍN,5áJ J 9à1F1g=©9àA EÍ=©-%£5f5á-1À1 5 9Î5Î: 9Î> : : 5Î5Î1 5À1 1 -©-®)á)à%g!gG!h!g!h!g%à%g%à%à-®-à-©-®1…1…5 1 5Î5 5Î1 1 )©)™%™%ä!â!äi!ä!â%ä%ä%™!ä!äi!äiâiihiIiHhHiHiHiHiIiHHHH'''''''''''''((HGJ A…√A…VnF 1g1fA EÍN-A EÎAÍRMEÎ9àJ F 9à9à=©AÍA…J J EÍ-%%5á9à1F √)-&A…A ) „-%=® √5gA…9á1F9á1E „=®1E-%-%9á5f9á9á5f9á5g=®9à9àA…N,1G=®EÎ=©=…1F=…N,S%=®5g9á=®AÍ5á1F5g1F9à9áN,A 5g9à¢9áEÍ1FJ 5g ‰A %=®EÍ1gJ )EÍ%1f5g5gA…J =©=©=®=®$‰=©J J %$‰9®-%$‰9à9®9à9à1f=©J Vn5gAÍ=…9àEÎEÎ=©9àN-5g-%AÍVoA A A…A A J 1FA N,RM9®EÍEβA =©=©A =©A…$‰¢-$5á1Î1 5Î5Î: 9β: 5Î9Ï5Î5Î1 5Î1 -©)á)à%á%à!g!h!g%à!g%à%g%à%á)à)à-®-®1…1…5 1 5Î5À9Î5Î5Î- - )™%™!â%ä!â!ä!â!ä!ä%´!ä!ä!â!ä!â!äi!äiiiiiiHihiiihiHiHiHHHH'H'''''''H'H'HHh9à5gA…1F)AÍN-9à=©EÎA EÎA 1FJ RMRMA…A AÍA J A J EÍEÍAÍN,)%-%-E=©A…1FÇEÍ$A…=®-$1F=®9àa1F9á=©5f9á-%Ç√N,$‰5g-$1F1FN,-%=®=©A…F =©=©RM-%F 5à-FJ,=©=®5gA…5gÇ-%=®A…A…1F5f=® „ √9à=®-%1FA…A…9à1f5g)A  √9áEÍN,=©=® √J 1f$‰))$-EA…-%1EN,9á5á5fA…9à%5áRLA )$1F5á=® „=®A 5áA…N,A =©A 5àA J RMA N,AÍ9àJ AÍAÍ1F=©=©EÎ√=©F =…5á=©A AÍA…A 9àA =©5g9á5f ¬1À1…1 1 5Î5Î: 5Î: 5Î5Î5 5Î1 1 1©-®%á)à%á%á%g!gG!g!g%à!g%à%á)à%á)à-®1…-©1…1 5 1 5Î5Î6 1 1 )©)™˛!â!ä!â˙!äi!äiâ˛iliHhHiHiHiHhHiHHHH'H''''''''''''G'''EÍEÎRM=©RMA =…EÍJ F 5gJ F F $‰J N,A…9à=©A…AÍ=©=®=©=©=®9àEÍ1F-%)√A…A…%5f5f1E-%-%9á9á$‰Ç1FEÍ1F1EJ
  997. -% ‰J =®9á)EÍ=…$„A…5áEÎ9®=®A…EÍ9á5á=©=®RM9à%S%1fN,A…b-%A©J -%5fN,1F5g-E=®9à)%-%-%1F9àA…=©9á9à)%=…5g=©1F1F)1F=®5á9á=®-%5gA 5g=®=®-%AÍ=®A…A…EÍ9àA…9à)EÍN,5gA J =©=®EÍEÍ=®9®A =©-FA 1gF A J EÎA…Vn9à=©EÍ1F9®9à=©A…A…˛A $J A…=©A…=®9à5f=ß-â1 1 5Í1 : 5Î: 5Î9Î5Î5Î1 5Í1…-®%á)à%á)à%á)à!g!h!g%à%á)à%à˝)à1…˛1  5 1 5Î5Î: 5Î1Í- - )™)™%ä!™˛!ä!™!ä!™˝!äâ!äiâiiiihiiiiihiHihiHhHH'H'G''˛'Q''G'H'H'HA 9®-%A 1FJ EÎEÎA =©VnA EÎN,1gEÎ9à=…A EÎA…A =©J 9à=©=®=©=®=®EÎA…))-%5g%=®5gJ 5g5f1fEÍ=® √1EEÍ1f-%5g)=®=©-%$‰%=®-%A…-%5f5g¢1f5gEÎA -%5gA…VèAÍq1E9á%9áA… √ √1E-%5g=…N 1F%=®J $„9à=©5g=©-FEÍJ AÍIÎ9à-%EÍJ -%=®EÍ9à5gA…9à=®$„5f9á£EÍ9á1E1F5g5g9á-FN EÍA  √-%1F¢N,A…A 9®EÎA…9à5g9àA =©A 9àA…EÎEÎ5g=©Vn=®J A 1g ‰VnRMJ =…A…)%J RM9à9á9à5á)-$Aß-©1 1 5Î1 5Î5 5Î5 5Î1 1 )®)à%á%à%g%á˛!g>%gG!h!g%à%g%à%á)à)à-©-©1 1©1 1 5Î1Î6 5Î1Í)™- )©)™)™%™!â!ä!ä!´ä!ã!ä!ãääjäijiähihiHiiiHhHhHhHHHH'H˝'U'''''''''G9à1F=®9àAÍ9àJ A EÎ1F=©RMA…J EÎ1F%VnRNA…5à=©)RMJ 5g5g9á9à1F9áJ 9á5á1E=©)=©=®)9á9á£A…9à5g5fJ 9á9á9à)-%5f5g5f%)9à „9àA =®9áA 9à=©N,=©A…J -FJ `1E)$-% √F =®1f-%1f √-%=®EÍ=®5g=©9®9áEÍ5g5g9à „1f%=®9á√9á5gEÍ1f%9àA $„=©9á)%=®9à1f5á=®A 5á-%5f=©1fEÎN J A…RM)%A…J =©A…1F=©N,9àA…J EÎ=©AÍRMEÎA A 5g1FJ N,=®A…5gN,A 5áN-J 9àA 1f5gA…EÍ1F5g-$%$„1®˛1Î5Ï1Î6 5Î5Î1 1Î-…%©%à%©)á%à%á%à!g!gGgHh!h%à%á)à)à-©1…1 -…1…1Î)g%-1 1Î1 - - )À)À!%%à!ã%â1f5e=á-$1%=á5E ¬9Üa$„Ç5e!GiäiäiiiiHiiiIiIIHHHH'H'(&('(('('(!GA N,A 9àA N,EÎEÍJ 9®9àVNN,J A A…NMJ =®VnEÍ9à5g5g1FA…F 5g=©1F „)1F)A…5á-%)$‰-$1F9à1F5á5fÇ9à¢=à5á9à5gA…9á1E5áRM=©A…5f=©9àA…EÎN,EÍ$‰9àA… „=©9à9®-% √A…9à-%)=®A…EÍ5g-F¢1F5f$„9á5f-%9à=®F A…5á-%)5g „$‰-%A…1f1E√9á5f)9à „5g)9®=®5g=©AÍA…A )9à=©A…$„1f-%1F1fA…5gAÍ9à9à1F1FA…A…9àA…=®1FA N,5á9à=…A -F-%=©=®5g=©)$‰5g1F1FRM=…)%1F9®J 1F)1E9á5f=á¬-#-$1E1E)1E-$))-%-$5Ü% A√)f%F%FhHG!%1$1E!%à)©)©-©%F=á)F!%)$)√9á9Ü-™1Ï-Î-À5®5f$„Å)9f$„9á1F-E1E9gA…1E))$ ¬%a¬ ¬9f¢ÅÂäHiHiHG$‚)$‚% ‚$„ ‚Ç¢ ¬$‚a ¬ÅÅ¢$„))-$1E)$ „5á=®A…EÍA 1FJ EÍ=®9®J 9®1g-FEÍ=®=©=©)%)A 9®=®N,1F „)%5gN,5g-%9áA©5gA… √-%1E5f-%1E1E))5á=®9áA…-%Ç$‰5g9á9à1F=®1F-F=®A…-E5gA…)£-%J 5g)%1F1F-FJ J 9àb1E1F=®-%1f)=©5g-%5gA©1F=®9á-%)Ç-%)$„9àN,RM=®-E=®EÍ-%9à9á)5gJ 1FJ =©=®5gN,5g9á=©=©9®A…1fA…%£F J 1FRM9®%=…-%A…=…9áA 1FA EÍEÎ=®EÍ)1FA J J AÍEÎA EÍA…AÍ1F1FJ =©9à1F)-F=©=®=…-%%A…9à „) ¬)-$=®˛1Es=à-$5f$„√ √ √-$9á1E1E-5f ¬ ¬-$Ç$‰-$5f-%(„%1D$‰ a-$ √-$9á9á-)1F)-$%=á9à1FA…9á9áEÍ=®)-%¢1E „ √1EA…J
  998. 9á „=á9á ‰1E$„b$„%FG!h!h√¢1D$‰%1$-$-$)¢) B5E5e$„=ß)a1E √1E-$9áA…)5gEÍ=®=©A )%9àN,J J A J 9à=©5g=©1F9®EÍ=®=©=®-%˛5á01f√ √A…5á)1%-%1E9áA…=®5f9á=®-%)$$‰¢-%%5f9á=®9à9á9à1E5gA…$‰5á-%=©5g5g)%J 9á)5g5áA…EÍ=®9à9àA 5g1E5g9à5g-$5g1F√=®5g=®1F1FA©9á5f-%9á)=©-E%9á9á1E9áA…1E5g5f5fN,%)1F=®)$EÍ)%5gEÍEÎ9à9à=®EÍEÍ5gR,-$1F1g)%^–A… ‰9àA…A…=®5g9àA…A…EÍEÎ=…J,)%%)%=©5àA…J EÍ=…A…Vn=©1FA =©EÍA…A )RMN,J A…A…1F)=®5f1E9®)9á √£EÈA…9áA…5f1E1E1F5f%1E1E ¬=®¢b „A»))=®-$$„1E1E¢kÇ9á-%-%5f1E-$-%1E)=à1F „=©=®EÍ1EA…EÍ5g5g5f9à1E=®1E √9á1E-$5f9á)1E$„)9fÇ A√)Ç1$Ç ¬5f1E))1D5f1E%9Üa$„¬√J 1E¢5f1E1F1F5g=®A…9àA…=®=©EÍ%)1FA 9àJ RMA 9®9®b–9à9à=©=©A…EÍEÍ-%J,N,A…9à5f1F-%A…9à5á=©1F=®)£EͲ=®1F-%5á1E=®)=®5g-%A…-%¢)EÍ9á5fEÎ9à5á=àA 1E1FN =®A©A…9àA =®9à<9á5f1f=®5f1FN,-E9á=®%1F5gA…=®9áA…5g9à$„$‰1E1F5f1F √ „)-%¢9á=®9à=®5g)%A…AÍ1F9àA…)$=à=®$‰EÍ9®A…A AÍA 9à9®-%=©=®9á=©=®J =®˛5gsJ AÍA…J J,=©1g1F5g1F9á5gA 5á1F=©EÍA…F AÍEÍ=©=…√=®A…J J 9à=®5g=©)A…EÍ1FEÍ1F=®)$‰A…5g9àJ 9à5g=®-$5f=®9®5fA®1E=á=®Ç√9áA…)A…1E1E¢1E1F1F9á5á-%A…5gA…N,-%5á=©-%=…=©J 9à=®EÍ=®9®))9à1f1F-E√¢)$$„Ç1E5f$„1E)¢1E5F$„-$5f¢-$-$b9á)˝1EU)$„£)5F-%5f1EAÍ=®1f1f=®A…=©=©EÍEÍ=©5g5áA…9à=…9®=©9à1FEÍA A…=©5á=®EÍ5g£9à=©EÍEÍ1F9à1FEÍ)J A©5gA…1F9á-%)A…1E9áA…=®5á=©1F=®=©=®5gA©-%A J 1E%J EÍ1fJ A…9à)1f1g=©AÍ=©=©EΠ5g-%-%5gA…EÍ$„)%=®EÍ$„-%=®9®EÍ9à5f=®9à=®1E=®9á=®9à=®5á9á5g1E¢1E5f˛5gEÍ5á)%-%1fJ 5g9á)5g1FEÎ=®9à9à5áA©N,A…9àA…=©%N,EÍ9à5g=®9àA 9àA…)^∞RM9àEÍA 5f=©A J =©=©A…A EÎA A…F AÍA… √=©=®A…EÍN,-%-E-%9àA )5gN,N,EÍ1F5á1F$„=©N,1F9à √A® ¬EÍF
  999. 1f-$¢1F=á-%$‰1E „-%A…AÍ-%N,J =®=©1F1fA©J N,-%1FJ N,-%=©N,EÍN,=©EÍAÍEÎEÍ5gJ =©9á9á=®=®5g5f)$¢i%1E-$1f-%=®$„ √¢-%A»)-$ „)$)=á-% „)$„9á9á5f)$=®9á √EÍA 1f5g5á=®9áA…9à)VnRM5gEÍA 5gN J =©=©A J =©9à=©9®A =©5f „=®J A…EÍAÍ-%1F)=©A…$„9áA…N,A…-%5f1F √EÍA 1F1F)N,$‰=®=®1E-%√9áEÍ9à1F5á%5gA…=®)N,A…A…9à1F9àEÎ)=®=®%1E$„J $‰-%%=® ‰£1%9à-%)5f5g1E5g)$9á1E=®5á5g1F9á1E5f5g=©5g%9à ‰A 1FEÍ-%%N,VnJ ))%=®1FJ 9à)-%5g=®=©5g1F1F-%J 9à5gA…=©=®=®EÍ-%5fAÍ5gZè=®A…5g)J EÎ9à9à=®=©A…9àA…A…J 9®-E1F√1F)A )EÎ1F1F=©%√=©EÍ=®A…EÎ1F √9á1EA… „9á-% √)-%9á5f$„)A…1F=®1F)=®N,9à √9à=®1FN,=©1F9à-FVn5à=…5gEÎ-F-%=©A =©5áEÎA…A 9à1f=®9áAÍ=…5g9á1F1F-$5g5f-E √9á¢9á$„9á¢%A…J 9á£√5f%9á-%%$„-%1F5f-%9à-%)%N,=®5gA…A…=®A…J %1F9á-%AÍ5á=®5á-%A 9àAÍA =©9áA…9á=®9àA…5á-%5g)1f)$A…-%A…-%-%5fÇÇ1E=®1f5g=à1F√9á-%=®√9à1F√%-E5g5g%-%EÍ9à=à)-%9àEÍ1F¢5g1F-%EÍ5g)5g)1E √A…-%¬1E1F1F9à9à-%$„5á$‰5g9à-%5f1E-%-%5f)1E9á9á1F5f1f1F1F5g1F1F=®9á9à5áA…-%√9àA…AÍ1E1F9á1F=®1f5g9à9à5áA…1F-%5gA…J 9á9àA…9à9á1FEÍ9à)$A…J N,5g=©5á1f5g9à9à9á9à9à9á9à%J =©=…9à=…5g=®5gJ 1fEÍR-A A EÎ9à9à-%RM-&9á5g5g9á=®9á1F=©=©5á9á1f9à1E=®)5g=®=®$‰$‰vEÍJ EÍ=®J EÍ1f=©)%N,5g1f9àA 9®J A =®-%J )EÎEÍA…=®=©5à=©9à1f5á=®9á9á9à5f1F5g9à9á-$9á1F1f)9á√£)5f5f)-%-$$„5á1F1F1E1%1EA 9á)5gEÍJ 5g5gAÍ=®5á-%J 9à%5gA…J 5g=®5á-%1F=©9à5g9á=®=®9á%J =…5g9à=©=®9á-E=®-%=®N,1F9á5á-%-% √9à „1E)$-$5g5f1F$„˝9á5g5g1F9à)9á9à5á ‰√=®AÍ=®-%J 9à-E1F$‰9à5f=©)$‰5g=®1F9á)A…9à-%A…5f9á √1F1fA…)A…9á)A©9®5g5f1F=®E EÍ5f1f5g9á=©9à%9àEÍ=®1F-%5g9à5á9à=®5gEÎ=®9à1f5áEÍN,A…5f-%√5f5g9à1FF J 5g%5g9à%5á=©F 9àA 5g=®9àA =©A 9à1FEÎ9à1fA…A EÎ=©EÎ=©=©-FEÍ)%1FAÍEÎ=…J A…%N,VoA…AÍJ =®=©1FRMA 9áN,EÍ9á9á1F5á=®5g1f5gEÍ9àA=©J EÍ5gAÍA =©J 9à1FEÎA =©J 9®N,J 9àZè=©A )A…=©F -%RMF 9àEÎAÍ9à=®1F=®A…EÍ5g9á5f=®=©=® „5gAÍ9á%%)5f9áA…-%5áA…A…5g-%)9®A A…1E) √˛1FH-&EÎA…)%$‰=©5g-%1g=©AÍ9àEÍ5á9á9à=®9à9à9á1EJ 5g1F9à9à=®=©A…=©9à)9á „)=®9à9à=©=®¢A…E 5g5gA…5g9à)EÍ1F9áJ A…1F=®-E9à=®9á-%1gEÈ5g5áEÍ9à)%1F=©5gA )u-$ „EÍ9á)5g1E1f ‰=®¢1f)Ç5f1%9à-%-$A…=®$„ √ √9á1f5f5g$„5gA…EÎN,9á5g=®1EN,1EA…A…1f9àJ 5gR,=©9á=®9á-E5g1F=®5g1FEÍ9á9á=©1F9àAÍA…-%-%9á9à9®5gJ 1f „-%EÍEÍ=©A…EÍEÍ5gEÍEÍN 5á1F9á1fA A A…A…5g)%J A…1fZèEÎEÎ=©EÍA J 1g-E9àN,)N,F 1F9à5g √A…5á5f˛5á-√=®=©5f9®EÎEÎ=®A 9à1FA 5g)%VnEÎ9àA A…=©1FN,-%A 5g$‰EÍ9áA 9à5gEÍEÍ-%1f-%EÍ5f=©9à)5gA…A…N,5á˛5fcA…-%9à=®)5f=®-%EÍ9à1f9á)1E1F9à5f1F-EA©1F5g5f1F9àA…=®%)5g9á5g9àN,-% ‰$„J =…=®9áJ EÍ=©=©9®A…5f1F9á1F=®9á9à=®5g%N,1f1FRMA =®5f5g=àA…)% √-%A… „EÍA )9à%Ç9à9à-$5g5f=®¢A…=…9á1EEÍ=à9á=®5f$„9à$„)N,9á-%-%9á „EÍ9á=©1F1E)9á%5f5g¢9à=®-$)$„5f1F1E) √J 9àA©)£A… „5g=®=©9á1E%-%=®=®)-%=®N,9®5g9á9àA…5gEÍ9à-%-%=®EÍ-%9®ZèJ )5f=©R,=©=©)EÍ5g9àN,1FEÍJ 1g5gRM=©5g9à=©J EÍEÎ)EÍ=®=©9àA EÎ1FEÍ=©RM-&-FEÎ5áEÎJ 9à9®Zè-%9àA…A…$‰A…5g9à9á-%-%EÍA…=®5f5á=®=®1F5g9á9àJ =©A 5gN-RN=®A…A…9àZèJ N,EÍ=©9àA 1FEÎEÍ ‰EÎN,A…1F-%5g=©9à1F%RMA…EÍ-%√A® ‰-%9à5g9á%√%=®5f$„)=®=©1E)9á1F1F-%AÍ9á)$)A…EÍ1F5fN,=®)1E=®EÍ=©=®$‰A 1F9àN,)=…EÍ1f-EN,5gEÍA…=©9à=®=©-%AÍ9àA…5áA F 1FEÍ=®N, √1g=©1F5f9á1E5gRm „1F5f-%£5f-%5f1F „)EÍ=®5g1F5gA…1F1F5g-%1EA…5áAÍ-%IÎ=®-%1F9à)9á √5f%-$=®-% „=®%=®-%-$5g)=à$„-E1E√9à1f9á1F√ „9à5g-%5f$„A…)%1F5f9á1F=©A…=à5áA…Ç-%5f9àA…9á9á9®9àJ =©5f-%1F √1F=®-$-%N,%$‰A EÍ5gJ )=©1F=…=®-&)1F5gA…9à1F5á=®5á=…9à1F1FEÍ5gAÍA 1fA A 9àN,9à5gN,A 5gN,A EÎ=®-%5hEÎA AÍ1F9àN,J 1f5á1F1f9àA… √=àR-EÍ=®EÎ=©1g)AÍ5à%AÍN,-%EÎ5áA N,A 1fN,1FN,1FA =©5gA…9àAÍ=®$‰=©5gEÎ9á$‰$„EÍ1F5g9à%A»)1F9á9á-E1f=®1E5g=®Ç-$-%-%5g1E9á-$1FEÍ=®1F-%)% „5áA…%-&J %£=®A©9àA… √5g1F9®=©))$1F1F5g5g1F=©A…5f5áA…1F1FEÍ=®EÎA 1FEÎ=©9àA -%1FJ 1F)9á5á9á1F „1g9à9á5f-%1EEÍA…1E1E5g-%5g9á£5áEÍ5g9à9á% √Ç5f-F¢9á=©$„5g „1F%9áA… √5g-%√-%)-%9á1E)√9áA…1E9à1F-$1E5f9á1F$‰A…1E1f9àA…A…˛9à9á£5gEÍ9á9à1E=®))%=®=®%AÍ=©A EÍ9á=®1F1f=®))9à-% „A 9à1F1f=®=©=©A…=©5gJ 1f%AÍ1F)5g=©9à5g=©=©1F9àA…9àJ 9àEÎ5g9àEÍ1gJ A 5á1FA…5à1F1F5gZèJ -%1g=©A…9à1f=®EÍ-% √ ‰5g-%9à5f)$A N,$‰=®1gEÎRN1gEÍEÎ1gA…9àJ N,)AÍ=®5gA…=©9àJ 9à5g)$A N,EÍEÍ=®1F9®9àEÍ9®1FJ 1f5áJ jA…A =à9à5g5gÇ9à=®5f1E5f9á „)5á1F)A…9à9áEÍ1F=®1F-%5f%-$9à) „9á5g-%-%5f9á1FA©5á9àE…1F „J 1F%-%9à9à=®A EÍ-EA =©=®J 9à=©-E9áA…5gEÍ5f1F1E=®-%) √%EÍ=©)-%9á5á1E1F9áA…$„¢√9á-$5g1F)9áAÈ √9à%1E9á√5f9á$‰5g%=®9àA©)-%=®=®Ç1E1E-$1E1F5g=®1E √5f)1F1f5f√=®1E1F%-$=®=®Ç ‰ √-%5f5f9á9à5g „¢1EA…A…1E9á5gA…=®$‰ „5g5g)-%=©9áA…9á=®=®EÍ5gA -%-F5g9à=©J A©9áN,-%5gN,5g√9áRMA…5gA…)5g1FRM=©)%-%5g=®A…=©1fJ  √N,EÎ=…F =…=©N,-FEÎ9àN-=®J A…5á1F=©EÍ-%AÍ9á1f9à))%9à9à)1F=©1fEÍEÎA =©=®AÍJ N,1FA J EΠ√=©A…=©9àA…EÍN,5g1F=©5g˛A…t)%J =©9®1F5gJ A©£%)5f5g5g9à1F1F¬ √)9á9á1E1F1F5g5á√%-$5g$„1f5g5g=®=®5f9á9á=®9®) „5g-%=®=»5á1EN+ „1F=®1F√A…EÍ9à5gEÍ „9á1FVm9á-%-%5á5g=®5g1F=© √A 5g5fEÍ=®9á9à)=®9á=®9á=®5g1E-$5fA…$„A…1F9á5g)$ √1F-%√ √)$ √A…-%1E-$)$1F=®9à%1FA…)$1E1f-%9àA…)1F)5f-%1E=®5f)Ç-%)1E)-F5gA…5f5gÇ)=®1f1F=®=®)$=®N,9à9à1F-E=®EÎA RM=®1F√A…J )1E)5á5á9à=®1F=©5gA 5g1FJ F =®1F%A…)√5f-%=©5g=®1FJ =®J EÍ9àAÍF =©=©-%9áA A EÍA…=©5gAÍ1FA EÎ=©A A…A…J J,5gA…-&√EÍJ =®A…=©9áA©-%5gA…5g5fEÍ=©A…EÍ=©9àZè^∞J A…RM5gAÍJ EÍ9àEÎA J J,R-)=©1fEÍ5á=®EÍAÍ5f „1f9à=®9à9àA J =®5g£5gRM5f1F9à=©%A J 5á-%5f1FEÍ9á=®AÍ=®1E¢9á=® „-%%=®5f=®9à5fA©9à1F)-%J =©9à-%)A®)$Ç1E%=©5g5g)J =®J 9®9áA EÍ9àA…%5á=®EÍ=®=©9à9àA )%=©A…1E=®5gJ N,J $„=®)$Ç=®=©1E9à9á1E-E$‰-%AÍ1E5gEÍ9à5f9á-%1EA…A…9à5g9á)5f9à=®)-E5á1F9áA… „)%5f1F-%9á£Ç√-%9á1E9f „1f) √=®√$„J A…%1E=…E…$‰9àA©-%-%%9áA…-%)9á1E)$EÍA…5gA…√1F=©1FA…)$F
  1000. 9á-E1f1E9àA…A…5f%A…A…=®5g)A…A…)%=®5g9áEÍ5f£1FJ EÍ5g-%EÍ9àVn5g=©=©5g=©EÍA -%5fAÍ9à1g9à1FA…$‰5àA Zè1FJ =®9à5áRMA…5áAÍ5f5g)√-E$„)9à-E9àRM1F5gEÍN,A =©A %1g=©RMRM1F9®AÍN,=©5gJ -E „)5gEÍ=©EÍ5fA…5g1FA…%5gN,A…$„1FJ J $„9à9à-%)-E5g9®$‰)5g-%)$9áA…A…EÍ ƒ1E=®-$EÍ „N 9à5f-%1FA…=®5á1E √=®A…5g „$‰9á=à%9à-$=®=®-%Ç5fEÍA…5g-FA EÍN,5àA…=©9àA…AÍA…-%A…=…EÍ5g1F-%9à „9áA…J ¢J 1E5g)J
  1001. 1E5f=®))$‰Ç%¢$‰-$¢1FJ ¬-%5fA»1E5á-%√ √1F=®=®¬-$c√9á5f-%1E1E$‰1E=®-$9á)-%1E-%9á-E „5f¢-$¢$‰9áJ 5fÉ)A…1F √1F5g1F9á5f9áA…9à-%%=®1F-%9á5á=®1F9à=®9à£-%J 5g1F=®1F5g=©=®)=®N,J 5gEÍJ =©=©=®=©9à9á=®5g) „1FA…1F¢ √=©RM1F5gA…A N,J EÎ9à1F%A…N,RMF F ˛A 9àA…9àA -E=©A…AÍEÍ9à5á9á9àEÍ9àEÍ=®9à˛=©-&)%-&=©J N,J AÍ)%1FN,5áA…N F 9àEÍEÍAÍA 1F5gA…5áEÍ5g5gAÍ%1F%5gEÍJ 5gÇ-%EÍ=® „9à5g5á9áA…9á=©5f%%=®)-%=…A 9á5á5á=®1E£)EÍ1E-$1E1f9á9á5á √9àJ A…%9ÜA…9á9à9á5á1f9à9á9á)%)1FJ -E „$‰=©N-A…9àJ EÍN,J A 5g5g%EÍ=®J 5á9à1F=®5g1F1F-%1E)1E9à9àA…9á5f-$1E5g5f5f1E$„5f-%1FÇ √¢-$5f9á5f5fÇ%=®-%-%%1E-$5F-$5á1E √Å-%)5f1E5f1E)1EEÈ-%5f%1FÇÇ$„9á-E B-$-E5f1F1E9á5f5f „-F9áAÍ)9à5g √EÍ))5g1F=®=®)£A…9à9àJ 5á9àA…1f9àA…%5f-%5gEÎ5g5f5á=®)N,EÍ9à1FJ =®5gEÍEÍ%1F9à5f-%EÎ9à5g9àJ N-AÍ5á√EÍN,5g1fA…EÍ=©=®=©N-5á1g9à5g)-%1FEÍ9®A EÎA…EÍN,9®=©A…EÎN 9®=©N,J J J EÎJ 9âEÎ5áA…=©N A…-E$„5g5g=®5g9á=®1%=©N 9®=©1FA…%$„5g9á1FÇ=®5g=®5g=®AÈ9à=®1F1F9àA…1F9á-%¢A…$„5f9á1E5f=®-%√9á1F1FAÍ1E9á=®-%-%5f√5g ‰-%5á1F5f9à1E%J
  1002. =©=®5áEÍ9®9àJ J )9àA 5g-&EÎ=©1F5gEÎEÍ5g=©¬A…=®-%$‰=©9à9à5g1F1F)-%5g) ‰$„9áJ 9á1E9à5f9á=®-%)1E1E9á-$9á9á5f1F1E1F9á √9á)5fK9à5fA…%5f9á √-%EÍ9á9g$„-% √1E)%9á¢1E5á √J
  1003. )-$EÍ5fA…1fEÈ-%5f9á)5f9à-%=®9à√1F% „A…5f1F=®9á1F9à5fA…EÍ$‰A…1f9á9à5gEÍA…-EA 1f5g9®=à ‰1f=®9à-%A =®a5á=®˝9à%1f=®EÍ))=®$‰5f-%1F1f5g9àN,EÍEÍ9à9àA…9á-F9®N =àA A©J 1FA 1FA…=® √A…5g=©EÎEͲA EÍA =©N,9à1gA…AÍA =©9àJ RMN-J 9à9®A…%A RM=…9á1F9á-%5f1G9à%=®A©-%Vm1F=©N,J J =®F 1f5áEÍ-E9á9á1fEÍAÍ£1f)$„5f1F-%5g1E5g5f1fA©RM√9á-%5f1F1F5g9á%9à%5f9á9á√1F9à=®-%A…1Fb5fA…9á=®5gJ 5áEÍEÎ1F-EEÍ)%=©-%5à5g=®5gJ 5áF 1F=©A…5á „5f9®9®5g1F5g)5g-$1E5f¢EÍ)5f1E5f1E1F-$9á-%5f1E))1F1F1E1F-%=à9á9àA©)1E5f9á √1%E…1E-%-%$„-$))5g „√Ç)¢9á-%£1Eb1F)%¢1E5gJ AÍ5f „=®9á9à9á=®EÍ=©1F1F9á9à-E1F%-%9à-% „1F1E%9à5f9à=®9®J )9àRM)%A…EÍA©9à5g=®=®)5gAÍ9á5g=®1fA…9à1F5áEÍJ -%5gRMN,A…A 9à1F1gEΠ„9à9à=®5g9à=©A…A EÍ5gEÍ5g9à1FA…5á=®5f-%A…9àA EÎ9àEÎJ RMZè1FRMJ A =©=…˛=©√A J EÎ-E=®A…˛=®-%9à5f=®J 1f))1F)EÍ5g√9à¢=®9à-%9®9àJ A…5g)A©5g9á9à=©J A…=®9á5á5f1F9á √)9®-%$‰1F)%√9à-%5g5f5g9á¢1FF
  1004. $„A®9à1F1E5g9á5g „=àA…5f5g9à5f=©=©AÍA…EÍJ -&EÍZèRM=…A A 1g1g=… √5g9á=®A =®5g1F1FA…1E5á)1F1E9á-$-$5f)-$ „-%1E √%5f=®J ¢5g5g-%)-%5f5f1fb1E5g9á$„√5f%$„9á˝ √3-$-%)$‰EÈ-$-$5f9á£-%1f)A®1F9á9g1F))$1E9á1f-%√-&=®9à5á5f5g=©)A…=®9á=©A©-$1FJ 9á5f9à9àA…=®9á1F5g5g=®˛5g}-%9àEÍ9áA…9á9à=®$‰EÍN,9à-%-%RMRMA…5g=®J 1f9à=©5gEÍEÍ9à5gN,EÎ1F9à9®A A EÎA A…EÍA…%RMEÍA…9áA…=®=©9à=®1f9àEÎJ N,5g1F$‰A J RMZèJ 1FZèJ =…AÍJ )%N,1g9àJ 1F-%5g5gA…5g1F1FN,1FA…IÎJ $„1f9à9àA…=©=®A 5g1F-%1F5g5g1f)%5gA -E=®1f5áJ -%=®A…5áVn9á-%-%=®1f=®9á1E5g9á5g˛1FL-%$‰$‰-% √1F1E5f5f9á9à5f √EÍRM=©-%1FEÍJ A©=®=®EÎ1fAÍEÍ9àA…J 9®=©J J =à=®5g=®AÍJ =©9àA…=© „EÍ9à5á1FA…1F-%-%9áÇ1F1E=®5f√ÇÉ1E=®5fE…1F¬=®9á1E=©A…£A®% „)Ç)-%-%9á „-$Ç1f=®)¢1E √1E-%9á-%A-$9á=á √5g-%¢¢)Ç5g5fA…1E%)-%£)A…A©)5f1f9àA…)9à5á-EA…-E9áA A…1F=©RM5g5á1f9à$„A…9à=®-E9àA…A…)EÍ%√=®9à1f)=®1F1FN,9áEÍ=©-F1FJ =®EÍ5g5á=©EÍ=®A…=®AÍ5g9à=…9®9àA…1F%EÍ$„A…5g9áJ 9àN,N,-%)9©J VoJ EÎ5à1G9à5gA =©5gJ EÍ1g=©9à$‰9®=®EÍF 5g5f%=®J -$)$5f)9àEÍEÍ9àa9àJ J )A…-% „√=®¢9à9®EÍ9á5g1f1F¢-F9à=®)5g5f9àA…)A…1F¢=®-%5g9á1E)5gA…1E-%1F) √9á1f5á-%5fA…9á-%=© ‰¢N,A…9à-%A )%1fJ 9à5á9à-%-FRM9®=…9®9àA A…A 5g9à5f1F1F=®9á9á=®5f£A…¢=®-$5g=à-%=®5fa¢%5fA…9á$‰¢√ √¬1f)¬1E1E)5g$„√5f1EA…1E5f1E1F1EA…5f1Eb1E-%$‰¢9á9á√-1E1F£-% √ √-%A®A…A…$„9á√-%A…-$1f5f9à9á „1F5g9á)√9áA…%)£9áF =©1F9á=©1FEÍRM9àA…A…N,=®£EÍA…%5g=©=®5á-%EÍ1F-%1f9á%$‰=®$‰EÍA A…5áJ N,J =©A…5g)EÍ9áEÍ9áAÍ9áEÍ=®=…9®=©9àEÎ5g=®1f-%-%1f=©N-AÍRMJ ^±EÎN,VnAÎVnN,9®=©Zè5àJ 'N-RMRNA 5gJ =®=®AÍ=®9àA…=®5f¢9á9à1E)=®A…$‰5á9à9à$‰A -%-%5gN,EÍJ 1FRL ‰=…J 1F9à˛A…b$‰1F5f=®$„ ‰5g=© „1EÇ-$=©EÍ1%9á-%-%5ÜEÍ-%9á9áAÈ1F√=®A… √5f9à=®5f-$9á)%=®9á1F)A $‰N,N,A 5gVNF N-A A 5á1gA…9®EÍ=®A…5g=©5á5g5á5g5g9à)1E-%$‰ √-$1f=®-%1E-%A…1E1F=®-%A…1E$‰)EÍ$„A…=®=®9á1F$„A…5fJ =®5f1E5f1E √√$‰9á¢)A…5f)$„ √¢)1F)5f-% √-%5f¢√9g9áÅA…=®£)1F1F9à9á5g5f1F „-%5f=® „)9à9à)=®1FA…1F1F9à-%)%5g9à9à¢5gRM5g √1F5á1F5f1F1F=©1E=®A…N,J 9á9à9à1fA…-%9à)%-%%RMA…EÍ=©1f5gA…5g9à1F5gA…EÎJ RMEÍ9á5áA…5fRM=®N,=…AÍJ =…=©N-N-=©1F=©=©A 5hRNJ J 5àEÎ=…AÍEÎ9à=®A A EÍ9á-%$„)=®$‰9áEÍ-$1F1E-% √1F9à5f5g1f-%=®A…))J AÍ$‰EÍEÍ√9àA…9®A…9®=®=®1E-%-%5f9á „$‰=®5g)5g1f=®5g)1E √$‰-%-%$„b$‰A…-E√$„1E%-%)5f5f1F-%5gJ EÍA…=©A…=©J 1gA )1F-FVnA F EÎ5g9à=©=®A…9à5áA A…AÍEÍ9à)5f1F)J 1E9á1E-$5f-%$„-$- √Ç¢ √-%$‰A…5f-%%5f5f=à9à%1F1f5gEÍ9á-%-$√=®1E-$)1E£$„-$9á¢1E9á)9á-$-%)9á5f1F-E9á√%=à1E-%5f5f)5g-%-FA…1FIÍ5g5f1F9à9á5f-%EÍ=©-% √5á-%5g9à=®5á-%)A…F A…)%)9áF EÍ=à=©-%=àRM=®=à$‰)9àN,5g=…9à-%=©A…9àA…√RM-%=©N,A…-%R,=®N,A…=©-E)%9®A…A…EÍ5f5g=®-%EÍ1F9àNMJ 1gEÎRM^êRNN-J RMJ,A A -%= A 5áF A A…RM1F9à=©=®)J 9à=©1f5f)=®9á5g¢=®=®5fF 5á9à9à=®=©9áA…A )-%J 5g1F1fA )%A…-E9àA…5fJ 9à5g9à9®9à1F1EEÍA…$‰√1E$„-$=®1f1F$‰)5f9á1E ‰Ç5f9áA…1E9á „9áN,=®=®$‰$‰9®A…9à5gEÍ1FJ J EÍ=®)RM5g=©N-J 5gRM9®J AÍ9à1F „5g9à9á5g)-%9á √5g¢)%9á-%√=®9á=®5f=®-%9á-$-%-% √)%-E √5f5f9àJ %1F-%-$)J -%¢)¬-$ √=á5f¢√)=®1EÇ¢£))-%$‰Ç)5f5f-%5g √¬)5g9á5f5f9®5g) √)F RMA®1f1F9à5g%%N,-%5áVnJ 5áAÍAÍ=®=…9á5f1fEÍRMA…%)-%9à5á-%1f9á5g=®A…%))5g-FA…=®)%)%RMA…9à9àA…9á √=®=©√EÍJ =©EÎ=©9à)1F5áEÍ9à-% √9à=®EÍ=…1G9à9à5à-&9©= 5g=©J J ZèRNJ =©J A 1F£J EÍ-%5g9à)1E „5f$‰=®9á)5f˛=®{)) √=®5g=®5f ‰1F9à5gA…A…1F)$5g9á5gA…A…9à5g)$ „%A…EÍA…1E1F9á=®√$‰A…)1EN,5f-%=®=®1E5g1E)1fEÍA…9fÇ$‰ √=®1f))%9à9àJ =®%)%)5g1FAÍ=© „5gVnA 9à=©AÍ9à √N,A $‰EÍJ 9àEÍ9á5g√-%-%9à1E)Ç9á)5f$„¢£$‰$„Ç√$„¢)-%1E=®A…5f)$5f1F¢b=®=®$„9à-$ „5f)<£ √9f-$)9á)5f$„1E=®¬ „-$$„%5f$„-E-$1E=®A…-%-%5f5f1E9à1F5á1f9à1fJ  ‰9áA…Ç9á9à-%=®9á=®5f1f5g-EA…=®9®9á √1FA…A…=©-%5g√˛9à+=®1F5g9á$‰=©A…1F1f=®9à=©EÍ5gN,EÍA 5gA…AÍ=©5g1F5gF A  ‰5g1f$‰9àA EÍ=…EÎEÎEÍA =©A…A…%EÎA ˝N,^∞N-RnF N-= VnA 9àJ RMN-A A J J A 9àJ N 9®)1FA…9®5f5g%5g%9á=®%-%A©-%1FA©1E9à=®=®F J 5g5g=®J EÍEÍ9à=…A A…9áEÎ%9à=©Ç9®9á9á5g9à5á1f „-%-%A…5g5g$‰£)1E-%9á$„-%Ç1E-%5á1E%1f9à √=à9à1E5gA 5áN,EÍ9àJ EÍ9à1f=®J EÍ9à5g9àEÎAÍ)A 1g)=®=©A…=à=®A©=®9à5f5á1E£9á1E1f5f1E%9á5f5f)1E)A…$‰ √5g9áA…5f-%9á5g5g1FA…N,5g)-%J 9á5f9á-E √¬ „-%1Ea)=®=®)1E9áÇ)1F1E-%¢-%1E)5f1F-%-%)1F-%5á1F%5áA…ÇA… √ „)-%9áEÍ$‰5áRM9á%-E%9àJ 5f=©RMEÎ=…1F1F% „5áN,5áF )EÍIÎ1F-%9àA J 1F5f=®)A…EÎ5g=®=®5á1F9áJ =©=®=©9à9àA =©)9à=©9à=®9à5á=®5g-%F J -&=…EÎF J J EÎJ N-Zè5àN,EÎR-J J,=©-FVnRN=©=©]EÎ)%1FF EÍAÍEÍ9á5f9à-$5f5f√1FEÍ=®1F9à9à A5á5gA…5f)%9àAÍ9á9à5fA…A…5g9à5áN,A…%A…J  „EÍ)%9á1F5f9á$‰9áA…) „) ‰1E9á-$A…9à1f))$„ ‰ a-$=®1E5f%EÍA…$„%1FA EÍ-%9áEÎ-%F A 5g1F=©=©F =©N,A EͲA J =©-%1F5g1F5á1E5f1F1f¢9á)$¢)˛1E$„-$1E5f5f$„5f-E5f-%-$ ‰¢N,5g-%-%A…√)A…A…=®A…1f1E))5f1F$‰)5g1E ‰√ ‰-)5fA…1E9á)$‰5f9á%1F=à-$-%-%)=®-E-%1E9á9à √ √-%9à=®))-%1F-%1F5fA©A…9á-%-%Ç=®5g$‰5gA A…J RMEÍEÍA…A…-%N EÍ¢9à9á-%A 9à5áJ 9à=®%1FA 1FJ F 9à=®9á=©5g1fA©A©EÎEÍEÍA 1fEÍA…EÍJ,1f1fAÍJ AÍEÎZèJ EÎRMJ,N,AÎEÎ9©RMN,9à9à1g^∞J RMJ RMN,=…J =©=à=…5g=©-%5f9áA 5á5g5g=®$‰-F √5f)A…A 1eA…1F)$A 9®9àA©J 5g1F9á9àJ 9á5g=©A…A…£%5g=®=©1F)$1f)1E)5gA…=®-$% ‰ b1E-%$‰-%1F5f9áEÍ5fA…1E5f¢A…1FÇ5g-%√9à)%9áA 9®=à)%1FJ 1FEÎEÍ=©AÍA…=©EÎ5à=…=®N,EÎN,A…-%A…5g9áA…-$1F=®=®-%1EA»5f)9á5f5f-$1E „5á5f%£%A…-%5f5f=®=©-E9á-E9á9á1F5á)5g9à=©$„Ç√√1E))-$1% „9á=á£Ç$„b1EÉ-%-$1E1E-$1E$„-E1f √A…1f1F5g-%5f1f9á9à%EÍF
  1005. 5g ‰A…5f=®5g-EA…1F9àJ EÍ¢EÎ%1f-%EÍ1FEÍ√=…A…-%=®5áJ A…5gA©1F-$1F5g1E9à5g=®A©EÍA…=©A…A…=©=©=®$‰=©RM1f1F9á5gEÎA A J 9à=®=©-%9àA…9©VnN-EÎA J J AÍRMN-9àJ,N-N-Vè1g-FF RMN--F5gA RMrA Vn1F√EÍ1F¢ „-%EÍ5f1f-E1F)9à=®)√)aEÍ „=à5f9à5gA…=®-%1F5g)N,5á9à9à=©-%9á=®9à√EÍEÍ5g „A…5f=®1E1FA…1F1EA…9Üb9á√1E „9á$„5fÇ5g=® √1E-%=®9á1f5f1E%1f-%)5f1F9à=àJ J A…EÎA…A A J 1FEÎN,1F5áA…1FJ =®A…A…5f-%=®¢-%$„$‰9á-%-$ „-%˛1E5f)1E1E1F5g „√-$=à=®$„)9áJ 5gEÍ-%£EÍ-%£$‰9à1E5f-%$„$‰ √=®-$£%£9á9Ü √1E%£1%)1E ‰$„£1E=à=®EÈ¢)1F-%5g1F=®-%9á=®£1F=©A…1F)√1F9àEÍ9á1F=©=…RM=©Ç=®1F1FA…=©$‰J )1f-% ‰A…=®5fJ =©-%5á=©A…9á9àN,N,EÍ-E ‰=®=©A N,9àEÍ=©=©A…VnA 5á1gAÍ5g-%9àA EÍ9àN-9à5g9à5àF F J F J,=©N,N,Vn-FN-N,J A 9©1FA J F 5g9à5g)1gEÍJ -E1fA…1F5f-%1EJ 5g%5g¬N,N,1F5f1F)A 5g9à √-% „=®=©EÍEÍ$‰1F5g1FEÍ1f=à1FA…EÍ√1FA…EÍ1f) √1E9á9á1F-%9à1FA…-%b-%%%5f-%√=®√1F1F¢5f9á9àJ 5á)$AÍA…=©1FA…N,EÎ=®-F ‰A =©=©EÍA J EÎ5gA…RMEÍ5g-%9®9á „=à9à=®1FEÍ$„$‰ √√-$9f5f9á1E)$„5fA…£-%1F)9à1F£-%5f5g-%1F-%£)5áN,1E=©A…1F5áÇ)$5f1E¢1E=®1E5E √Ç$„a9á$„=® „ √)1E9á5f) „-$-E¢J )5f5g)$$„ √$„1F=®1E)EÍ1E5g=®1F)$AÍ9àEÍ √5g1F5á=®J 9á9à√=®1F5gJ EÍ=®9à%EÎ-E))=®=®)EÍ=©EÍ))%5g)A EÎ5g)$1F√5f=©9à9®F 5f=©9à5gA A…%A A…EÎ)EÎRMZèJ R-EÎ1gEÎRMJ,Vnb—F N RN9àN,Rn9àJ EÍ=©N-ZèAÍ9à9®A 1F)1F=®)=©A…9à-%9áJ 9à=®1% „1F$‰J )A©1F-$5f5g9®5g-%)5á5f1fRM-E9á9á1E „√)=®N 1E1FA©1F1fJ 1E)$A…-%5f¢-%%)5f9á)%b-$ „$„=®5f5f-$ √=®) √)5g=©$„EÍ9àJ )1F1f)A©J 1F5g)√A…A…=©9àEÎ1F9àA…1F9à1E¢5f=®1F¢9áAÈA…9á1E$‰Ç1FA…1E9á=® √=®A…)%A®9à$„J 1F-%5áJ 9á5g1fA…$‰)1fEÍ-%A =®9á9f „1E-$ √√) „5á-$5fb-$1EA®¬A®-$$‰-$-%-$5f-$√√-$)$5g-E9à-$A…A…√√9à=®¢9à5f$‰1FA… „-%5g-%=®-F%A…5gN,F =©1FA…A 9á5g=©A =®9à-%9à5gEÍA…9à=©9à=©A…=©9à9à-%A 1fJ =®A…-%5g-F-%)-F=©AÍEÍ=…A…RM9®-%9àZèA A J RNAÎRNA EÎN,=©F 1g5h%=©RMF AÍVn^∞AÍ9®-&N-J =©EÍJ oEÍ=©1f9à5gA…-E9à1F))%1f5g9á5g9à√=àA =®%J 5f-%9®5g9àAÍ9á-$-%9á9à5á=®5f1EA…A…√)%9àA…Ç9à5f ‰)=®Ç)1F)1E ‰£A…$„EÍA®9á$„A®1F$‰)-%1F1f1E √-$)$5f9à9á=®5g=©=®=©5g9à-%N,5áN,AÍAÍ1FF 9à-%%1F=®9à=®A…9áA…) „1E=®¢-%5fA…)5fDz)1% √¢ b „J 9á9à9áEÍ5g-F£9áEÍ9à5gA…A…EÍ1F5á1FEÍ5á9á-%-$A»)1E5á¢-$-E)1E%% √Ç√1E-%5f-%$„)1E-%5á1f5g-$%1F)A»9à1F=®9®1F1F-%AÍ) √5g1F=®A©%-$5g1fA…1F))%%5g9à5á$‰J J 1FA…EÍ9à-F^–=®5f5gN,5f-%5g9à9à-%RMN,5g¢-F=©EÍJ -%%=®AÍJ A…A…AÍEÍ=©=©1gJ 9à)A Zè1G)A RMVnN-=©1F=©J 9âZêZè5g9à=©A J F 5gVoA ÇA 9àA…=©-=®9à9á9à)5áEÍ=®9á=©)$E 5á9á1F1f9á1f¢1F5á9àA…9à9á5á9á=®9à=©9à-%1FA…-%=®9á-%A…=à-%1f)A %$‰˛1F\=® ¬1F1F)5f-$) √a1E5g1FÇEÍ9®-%-%5f)1EN,-%-%1fEÍ9á-%1F=®A…1fJ A…5f¢9á5áJ J -&1FN,=…EÍ=®9à1F1f9á9á ¬9á1f ‰%=àa¢-%=®5á5f ¬£¬5f$„EÍ9áÇ$„-%)1F1E1FE -%!5g1F9à-%5g9á9à9à)A Vn=®9à√Ç¢=ß5f) √1E)%9á1EÇ5f$‰¢$‰ √EÈ-$5f$„5f-$5f1E5á5g5f1E$‰9á)$-%%-%5f1F-%5g1F=®A 9®5gEÍ-%=®A 1F=®5gEÍ=©EÍA…A 5g)1F5gEÎ1FRM5g1fEÎ-%1g=®N,=©EÍA…=©$‰5gEÍJ EÍ)%5á ‰J 1F=©A J =®1F=®A EÎ5g9à=®EÎA…N,1gA RM9àAÎZ∞^∞N-N-J RMVo5àEÎ^±Vo9à1FN,^êA AÎ)VèRM5gRMN,9®J A…5g=®5á√$„)$J 9à5á1FEÍ-E5g=©A… √E…)-%1F5fN,A…J 5g9à˛1Fn5f9à5f9á ‰=®-$-&)1f9à1F)5f)$=®9®1E1fJ 1EEÍ5á)1F5f9á-$5f5f)$ „¢)$-%9á „J 1E-%A» √1E=®EÍ9à9à9®=®1E1f=…A…EÍ)%9à)%J -%A…=©EÎ5á1F5á=®5f-$1E1f1F9áA… ƒ%5f √-%=®9á5F9á1%-%1E√5gJ 9á)¢5g=à5g5g√A…A…-%ZèN,=®=®9à5áA…9à$‰)1FEÍ21E5E¢b5f1E5f „-%) √£1E9á5f)-£1%√ √9à))-%5g1F%=®-%-% „ÇEÍ1f)%$„=à5f1fA…¢1EE A…A…9à5g5gA 9á¸9à{A…1FA…EÍ9á1f5g ‰1FRM1F1FA…9àEÍR-=®1fN,N,=©J A…5á)%J =®5áA…-%5g9à=©AÍN,1fA Zé1fJ ^êN,J ZèNMA EÎ1g5à)RNVè=©9©=©J,5à ‰Rn^∞A 1g-FN-J AÍ$‰A 5g9à9à5g √RM=®N,EÍ5g=®1F √=©-%A -%9à-%-%√=®A EÍ1F9á √9à √1gEÍ9á-E1F9á=®)A…1F1F%£EÍ5f)-%A…9á5f=®b1F9á9à=®9á˛5fV1%1F%$„1E-%1f √1f1F-%¬) a-EJ )%1f-%EÍ=®1F)J N,=®A…5g9à1FN,AÍ5g=©)1F1F5f=©J -$=®N,-%9áA…5g=©=®-%)1F¢¬ A=®5f-$%)$1E √ÅEÍN,5f$„√=®J 9à£-%-%5g5á1F$‰J =®J A 5g=©)%$‰1EA®-$ „√¢=®-Ç=ß%√9á-$%-$=®5f¢=® ‰)1F1EEÍ9á5g1E „1F9á-$1f=®=®EÍ5g-%=®=®9áA…1F9à)5fJ ) √9á5gJ 5g=®Vn=®=©9à=àEÍA…=©=…EÍ$‰-%Zè=©%1FA 1gA EÎ$‰1F9à5áJ A…A…J =®5áJ 5g5gEÍN,-ERM1FEÎ=©9à-&=©A =…J ^—b—5àN-Vo5àF VoJ EÎF EÎRMA A J N,A J F A…EÎVn)EÍ-%N,J ;EÍ¢A…5á)=®N 9®A…1E)A 5á$‰EÍ1F1FA…9á5fA…F
  1006. 9á¬J  √5f9á5fA…=®5g5g$„9á1f1E9áEÍ9áA…1E5f=®9à5áIÍ1F1E√-%5f √Ç)-%A…$„1EJ ˛5fN-%9g5g1E-$5fÇ$‰RM9á¢%=®)9á5á√1F5f9à=®EÍEÍ=®9à9àA 1F-%A A…-%N,)9á5g1E£$„1f-%9áA…EÍ √9á=®¢5f9á1E9á1f-E9á1E-%9à9á5g-%5á5gJ EÍ%5g-%J N,= √9à1f$‰=®R,=®=®)-%-$ √) √$„=®)¬1E1E$„) „b5e%$„)5f5f) „5f-%1f-%=àA©5g-%9á9à$„)%-%)A…1F „$‰%)%=®5f1FJ 5g1F9àA…1F5gEÍ9à9®A…A…5g1gF 5gA -&)AÍA…=® „5á1fA…=®-%=…)5f1F1F=®9à5áJ A =®EÎ=…EÎN,=®$„9®AÍEÎA 9àA…EÎJ J F EÎN,J VnF N,9àRMZèN,J EÎJ A 5hZè=©=®AÍRMN,=©5á-% „-F=®=®=…)5á1F1F1E=… „5áRL9à1EN,=®-%-%)$„N,-$5f1F=®9á9á)9á-$5á1E=®A…))=®=®))-% √A…% √ „$„ √$‰1f%-$EÍ%)=®=®$„)5f-%-$=®5f1f)=®)=©$‰%=®=®1F „5g5g1E5g)%=©$‰9á-%5á5g1F1FJ =©9à=®=®1FEÍ5fÇ-$A…1E1F „-%1E-% „5f)A…)9á-%1E „F A…-%1F1E5f-%)A… „5gA…AÍEÎ9á)1F √5g=®9à9®)%5g9á5g5g£)-$1E5f-$b1F1EÇ1F5E „9á=® ¬£)Ç5e-%-$-%bÇ)5g1E)9á=®$„-%%=®1F1f-$5g5g-%A…N,9á-%EÍN, „A =©5g9à9à)-%9áA…AÍ5gA…J -%=©5gJ Vn=©=®EÍ9à=©A J N,5à1fEÍAÍ=®9àEÍ1FA…1F9à$‰EÍJ A 1F=©9àEÍJ EÎRNRnJ 1G=©EÎ-FAÍN,Vn9à=©RNVnAÍ5gAÍEÎEÎJ J N,-%J VnJ A…EÎ9àEÎEÍEÍA ()9à¢EÍEÎ)1f)%=©A…5g √J 5g)A EÍ-$EÍA…1F1FA… „A…5f1F5f£Ç1E9á1F$„9á9á%-%1fA…1E˛-%a5g%A…A 1E%5á=®√A…5g)$5á1%√¬1F1f1E$„9à=à√5f5gA…EÍ9á5f9á1F9à=®N,J %1F=©EÍ=®9à=®1F5g%-%$‰=©=©9á%)$5f9á-%1E=®5f1EÇ%$„b-%=®A® ƒ)A®5f% ¬5g-%5g9á=®=à$‰5gEÍ5g9à5g-%9à=®9á=®%A…ÇN,A )$1f1gA…9)-%5fÇ9á√1E%)1EÇ)%-E)$1E$„)$A»Ç-%9á1E=®9à-%1F)5á5g1E9á$„AÍ5g5áA…=©)%-%A…9à9áA…1F√%9à)√A EÍ)J A…N,9àAͲ9à|RM))%=®5á=©A A…EÎ-F£)5áA…J 5á9à=©9à=®1FAÍVnJ A…5g9à-%A…1F5gJ VoRNZèVoRMVèA J Zè-%9àA J, ‰N,9©kN-J EÎEÎJ J AÍEÎ-%J 5gJ RMN,J -FEÎN,=®9®5g√5gA…9à9à „IÎ)A…-%9á5g√=®9á5g1F9á1fA…N ¢5f5á9á=®A…1E9á-$5g9á=®9á „9á9à1FA…9á)%A…5f9àA…1F¢$‰5f$‰Ç9á5f¢˛A…P-E1F1E)1E9à√√5f$„5f1F1f9á%Ç-$-%5g=®5g9à=®5á=…-EEÍEÎ=©)-%)$„1F))9á=®=©A…5á5fA…)-$5Eb √-%5fÇA…-%J 5f5á5g1E9á5f=®9á „9à-%A J A…AÍ)EÍ=©9àA…=© √5g9à=®A )g1%¢1F=®Ç)5f¢$‰5Ü5f$„ √1E-%1E1E√ „ A1EA®Ç9ÜEÍA…-%5f%1E5g5f$„5á9à9à-%5f5g)%=®¬√J A…9à%A…EÍ5g)EÍRM1F √1EJ A…=©1F9àA…1FA A…EÍ=©A A 5gEÎRM)-%-%5áEÍ5gJ 1FEÎ1F5g9àEÎJ 9à9®VnA N-AÍ-F)%J AÎEÎA =©ZèAÎRN^ê=©˛J )%J 9©RNN-= N,VoA Zè9àA AÍ5g¢=©N,=…)9á=®=©=…=©5g=©J 5g1FN,%9á=®%-%EÎ=®1F-%A…5f1F5á))Ç1E9àaA»=®=®1f=®)1f5f9á √=à5f9à1E9á1f)=®√¢J =®9à¢=®A»-%¬=®=® ‰b)5f1E-%$‰-%5g¢=®9áA…1F9á1F)=®J 1F1F ‰-%9á5g9à-%=®)5g5g=©1f √1FA…9á5g1EÇb1F5f1E1E-%A…)=®"9á√%1F=® √1F)=®A…)=®A…1fJ =®9à9à-%√EÍN,9á1F=®=®5gEÍA 9à=©F 5g=©J -$1E √5f1E√¢=ß)√1E)$$„-%$„5f1E-%=á=á A)%5f b)-$))$EÍ5f1F=®)1E1E9á9á)EÍ1F5g5á-%-%9àA -E%9®5g9à9à1FJ A©=©=©9à=©=© √A A…)%5g9à1FA A EÍ-%1f1F9à)%)%A F =©EÍZèA…$‰5áR-5g=©F A N-J J EÎ5gEÎN,J =…EÎ1gAÍZèRNb—ZêF N-9©J A 9©J N-J 9àEÎA 9®A N,9à%-FA…=©=©=®=®AÍ5g1f1FJ EÍ1FAÍJ 5g-%J 1f-%9à1F1F5g5f=…9á9áA…9á A)1Ea) „1E-%J 5f9à=®)-%1F1E5g)$J
  1007. )%1F1F$‰ „5f9à$‰√5á1E1E)$„-%1E1E5g-$1F1E√9á-%¬1F=®-%5f5g1E √)9á=®5g „ √9á9á5g9àA…5f¬5fEÍ¢1E=®-%A©1F5f£ √%9á5f%-$Ç9áJ 5fEÍ9á5g=®-%5g9á)A®=©=©)$A…=©5á=®EÍ1F „-EEÎ=®A…9á9à9á9à1E9àEÎEÍ1FEÍÉ√£Ç √E…-%Ç9á9á-5f1E¢ „-$ „--%5f5f)$„$„9à1F1F)%1F9áJ =®5f9á9à5á)-FJ =®5fEÍJ J =…9á-FJ 9à1F1fEÎA =…=©9àA…A…-%Vn)EÎEÎ9à)%=©J N,=©RMN,AÍA J 5g5g$‰1fA…F 1f9àEÍ%N,AÍ√F 5à9àZè5g^êJ A AÎRMNMVn9©= A 5á=…EÎNMEÎN-J J -FJ F =©5á9©AÍEÎA RMN,9à1g1F5áA…EÎEÍ5g1fJ % √1F √ „5gVn9à√J N,5gA 9á)$-$A…)$1E1fA…9®-%)1F=®1F5g-%)1f=®RM9à5f1F9à-E-%-%F
  1008. 1F-E=®EÍ9á5f)$%EÍ5g))9á5f$‰5f1E1E-%%J  √5g9á% √9àAÍEÍ1FA…9á9àEÍRMA %Ç9áA =©$‰-%A…ÇN,=® B9á „)N,%E…)$„)9á5f-$¢)1E√$„1f5f1F5g5f5g „9á9à1F)%)9®=®=©EÍEÍ9á5g-%5gEÍAÍ9à-F5gN  ƒ%-%$‰%1E1f1E1Ea-$)) A1EA…)$)$„5f=®$„)5E5fA»5f5g5f¢9á1F-%5áÇ√)5f=®-%A…9á-%-%)$„)%9à9áA…J =©-%1E-&9®=®-%J N A =©A =©EÎ5áEÍEÍVnN-RM√1g1f1g-F1FA =©EÎA…EÍ9®1F$‰5g=®A…EÎ5g5gEÍEÍ=©NMJ A =©$‰Zêb—9àN,EÎRMJ,1g5g9©RMA A N-EÎJ Vn=©R-5áJ N-F N,=…9®^∞9®J =©1fJ )EÎNA…1F)EÎA…5áEÍ9à5f¢9á9à9à¢=©N,-%=®1FA…A…1F)=®9áEÍ-%9á5f$„9á9à1F5g¢-%-%5f1E-%=®9à-$-E ¬%)$=®9á9à=®5á √$‰ √-$)%A…A…1E5f1E-%1F$„5f9áA…=®A…Ç-%-%$„ √ „9á5f˛=®;))$¢A®=®5g5á))A…1E)9á9à1f-$bJ
  1009. A»¢=®5f1F1Ea£$‰A…)5á5f1E5gA 1EA…)9á9à=®A…-%5gVn-EJ 9à9àA…)%A…A 1F1F=…=®9áA =©=©-$ √5f5f)√Ç √1Eb$„) „Ç%A»-%-$Ç$‰Ç9á)EÍ)-$A…-$-%9á$‰5gJ 9®9à$‰=à9áA…F A…√5g9à=©5g9à5g9à9áF RM1g5áEÍA…A )A…N-)J £=©-%-&VN)A…5gAÍA… „ √EÍF 9àN,F A…J EÎEÍEÎF -%9àZè9©1gJ RNN-1F=©J RM-&=©RNF J EÎVnF Vn=©A VnAÍ9©9©1gEÎ5à=©RnJ 5à=©5àEÍ5á5g1F1FN,=©1fJ -%1FA…9á5áJ J 5g5á%5gEÎ%-%1f˛)yE 5g5gÇ)Ç=®$‰EÍ-$-EEÍ-E)1F „A…=®5f1F-%9à5g9à9à9á£1f9á9g1E1F)1F1F9áA… „1F9á5f5f √1FEÍ¢A… A5f √$‰=® ‰1E)$EÍ9ࣣ5á=®1FAÍ1F1F5f=à9á1F5f£)J  √$‰)5f5f¢%1E1E¢-%EÍ5f=®1E=©5gA…-$5f5á))%1F$„9á%=®J A…)5g)$A…)1F1F5gJ 9á1FZè-%1F9®=®1FJ A…$„ „¬$‰1%1E9á1E))-$)-$5f$‰$„)$‰9á „$„-%$„$„-$1E A)%EÍA©-$5g1E9á=®5á¢A…A…=®9à9®1E√-%=©9á)AÍJ 1F9àZé$‰A…=©1F5g=®J 5g1GJ 9à5f5gA…A…5g-%1F9à9á5gEÎEÍ)%J J 9àEÍJ EÍEÎEÍA 1F=©9®EÎVoN-EÎZè=©J RM5àA Vn9à1g1FRN1gN-A VnVnRN9àN-VnEÍVn1g1FJ A 9àEÍA A F )-FEÍ=®5á)1F5f=®=®5á9à9àEÎ9àN,=®9à9®9®9à9á=®-%)-%)9á √˛)q√-$-$ A1fJ -E)$5f1E5f=®1EÇ9á=®1E9á1f)$Ç1F5f-%$„9áEÍ-$1%EÈÅ9á1E)-E5gEÍ-%%A…1F1E-$=®5f-%$„1F1E9á)9á5f „A…5á$„1f1f9á5f1F-$¢1E-$1E=®)1FA…-%9á9à¢1E=®$‰ √ √=® „9á1EEÍ9®5f)A…EÍ5fN,$‰1F=©9á5f=®9áA…EÍ ‰-%=©5f9à-%=®1FA =®5g1g5g1E)1E$‰-$9á1E1E=®-$)9á%=á=®-$-E-%)1F9áÇA»-%A®5f5gÇA…9à1F%1E5á1F1f=®-%5g9á=®9à5gEÍ5áEÍJ,A…-%A…A √)A…J RMVn √9àA =©A A RM1G5fRMN,EÍ9à1f9®EÍ9à5gA…%J EÎEÍ9à=©EÎA A =…RMVnN-5àA A 1GA VnEÎJ EÎ-&N-^∞J,A 1g1FJ J 1gA =…A RMEÎ9àA EÎJ,A EÍA…EÍJ EÍJ =©1fA EÍ9à5gE A…5g9®9®=®5áA…EÎ5fA…A 9à9áN,-%EÍ9á5f9á1F%9á5f¢F
  1010. 5f=®1f5f√EÍA…1F)%-%9á1F9á1F-%1E5f1f5f-%=®1F9á9á5g$„=à1FbÇ5f5f=®=®Ç-%9á1E-E1FJ $‰1EJ J =®5g-%1f9á-%%9á¢A…5g5f%9à9á5á-$1F9áEÍ9á √$„)Ç-$A…)1F-%Ç9áA…5f% „√9á1E%1f-%1fJ 5g-%-%=®A =®=®=©=©EÍ9àF 9á5áEÍ=©1F5fJ E 5gA 9àA…5g-$$„ÇEÈÇÇ√Ç¢1F$„¢¢¢a1E-$ „9á-%)5f √1E%1F5f1f¢1F1f=®=®1F9à5áJ 5g-$=®1f-%EÍN,-%EÍ=©5g „5gEÍN,)A…9àA N N,9®1F5á=®-F-%AÍ%√N,5áA…A…EÍ=©EÎ9àF J )%5gA A 9àAÍN,A J 5à=©N,=…9àRMAÍ$‰A Zè^∞RMEÎ1FJ EÎJ J EÎ5g9®9àN,AÍ9à9àEÍEÎ)A VnAÍ=©A A…=©N A %A…5áJ JEÍJ 9à9àEÍ9à5g ‰J ) „)¢)%=®5g)-%$„Ç1E5f-$A…-E1F=®-$=…5g1E9á1f√5á9á9á5g)$5f-%A…)$-%5g-%$„A…A… „9à1f-%¢$„=®9á√5á-%5g=®9á1f „1E)√¢5fÇ£E…1E9á˛5f?1f)$9á9á¢5f-%5f-$9à9à1F1f ƒ$„9à$‰ „9á-$!)%=á9á1f)Ç1F)1E5f5á „1E%EÍ1F5g)A…9á£9áRMA…A…=©=®=©J =®-%EÍ=©=©EÍA 5g=®N,5g9á ‰N,5f „-%Ç-%1E%1E √=®9á$„1E=®5f% „1E£-$¢=®9à5f¬A® „N,-%-%)9á9à)9á)1gA…9®J N,1F ‰9àJ 1fJ A…-F9àAÍ9®EÍ-% √5á=…-%AÍNLA…9®N,N,A EÍ-F%=®-%EÍA A…A…EÎ%RnN,A =®A A…EÎJ EÎ=©J A 5áZêJ ^∞N-EÎ-F-FA N,N-Vn=©ZèN,EÎEÎA NMEÎ5àA A J =©F J -F)=©EÎEÍA 1f9®J 5á5g-%=©EÍ)5á5fA…A©5á1F √9àEÎ9àA…$„AÍ=®1FA…EÎ9á))9á$„5g%J A…A©-%N,%F
  1011. )5á1fA©5f)1F))%9à9áJ =®-%¢=®5á)5g5á)-%-E1E5f)Ç1F)%√5fA…1f5g9á5f1FA»√%1E%A…9à1E1f-%Ç=®EÍ5g1E1E-E1f9á5f-%-%-$ √A…-%=©1E1EÇ¢)9á5fA»$„A…1F9à1F5g=®9à$„9à1f9á5fAÍ9®$‰ „A…=®EÍ=®1F9àJ 1F=©-%A…A…)1F=®EÍ9à5g5g)1F1E˛9á)%1F-E „1E-% √)1E1E)5f$„-%Ç1E1E$„A…5f5g˛A…$„£5áA…-$1f)-%Ç1F=®A…1f ‰)%EÍEÎJ A…-%A…9à=®=®1F9à-%N RM5gEÎ5á9àEÍJ =©=®A…A…5á-%N,J 9àRM1FA…RMJ F EÎAÍN,A EÎRMJ A N,F RMA ^∞^∞EÍ5gEÎA J,EÎRMVoRMN,RM=©J RNJ A J A A A…J EÎA 9à=®=©EÍ9à=®=®-%1f=®-%-%EÍ=®1FA…A N-J A…5g9àA 1F „9á1F-%)5f1E1f9á1f5f)5g9g „A…*9àA…9à=®EÍ-% „5gA…5f1E$‰$„Ç-E9á1F) „)¢1f5gEÍ-% √-$)1F1F$„5f „9á9á-$9à5f-%9áEÍ=®5F˛1EA √A…1F$„9á£1F9à9à5f-%1E5f1E1F5f-$5f5f1F1E)A…J -%)1F1E9á=®A…EÍA…=®9á1F=®A =®5g9á9àA…9à=®9à9à5g=®A…A©1F5g9à)9à=®)%)A…=à5á9à9®N,RM =á5fÇ √ ‰9á%Ç1EÇ5f9á1F˛1E)√J
  1012. 5g5f „5g √1F)$-% „5g9áA…5f „=àJ 5fA…5á5g „)=®EÍ=©5gA…=©1F1FEÎF A…AÍIÎ=…9àA 5g-%9à-%EÍ9à=®9à-%EÍ5gN-=…J =©EÎ=©9®EÎJ EÎ^∞J J EÎA J EÎRNN-J 5hAÎA RNA 1GN-VnN-9à)%5g1F1g)%1FEÎ=…9©N,=©RNA J J A J F J =©5á9à=®=©=…J A 9àA…)EÎEÍA…A…1FJ EÎ)5g)J 1F)=à√5áB=®9á5g-%=® ‰ ‰EÍA…1F-%9®$‰1F1E-E$‰1F5fA 9à¬=©J 9à=®1F=®$‰)5f9à5g5f9á-%)-%=®=®1F1F9®-%-%9à1F¬$„¢9á5f5g-$$‰9á-%5f%5g-%9á-%-$5g-$-%˛9á7-%-%1E1E=®9á5á¢1E5fA…)£1EA©9á-%¢) √ √¢$„5á-$)A…)N,5g5g9à=©A…EÎ=®9à-%9à9á9à9áA 9à=©=®-EEÍEÍ5gA…9àJ 9à-%5g¢ „$„ √ √√ √9á5f1E „!1EA…9Ü$„5f1E$„)-$)1E1F√˛1F1E √=®=à9à-E √A…N,A A…=®-%5áJ J 1F1F%N,9à9á9à=®-%J,RM9à5gAÍA…A 5g1F5g)-%5gJ RMN,A AÍZèN-AÍ5g1F)=©EÍA 9àN,=©Z∞RM9àAÎN,AÍ9àEÎ1gEÎ1gA N,RMRMJ J J A J A 5àJ -FN-A J N,EÎA EÎA AÍAÍEÍJ EÍ5á9àJ 1F5á5g)A =©J =®-%)1F5g5g-%%)1FEÍA…9á$‰ AA…J A…$„=à1E)1F5g-$9áq1f$‰9®=®1F1E¢A©=à5f) √A…EÍ9á9á=®-%1EA…=®-$-% √=®1F-%5á-$ √EÍEÍ „-E9á=®5f%$„-%√$„$„9á5áA…1E1F=à=®1E)¬Ç)5f%$„5f)=®5g)5f9á1E √5f ¬9áÇ)%1EA…=®9á5g5f1E=®1f)1F√9á1F=©A…1F5g9á=®9à=©A…J A…9à9àA -%5á5f-FEÍEÎN,9à)%1F1f9à5g9à%)-%-%1E1E-EÇ1F1E1f%√5fA…%-%1F1F)1F9á5f=à5g1F=®=®A…9á1f=®5gEÎ5gÇ9à9áA…EÍ-%5gEÍ=®J =®EÍ9à=©J =®=©J 9àEÎVn5á5gJ =©EÎA =©A…A )-FA =©=…RM=©A ZèJ RMVn1FA =©F N-=©-FN,N-EÎJ N A J RMEÎJ  ‰AÍJ A J J N,J J F J RM9©A…F 1gA N,J =…A =©9à=©EÎAÍAÍ1FJ EÎA…9à5á „j1gJ 1FN,=®5g=©A A 5á9àA…%A…9á=®-E-%A…A…1f-%9à5g5gA…A 1f9à5g1f=®9à=®5g1FA©9à=©-%£5f5g9á=® √5á9á9á=®5f=®1E5fA…1F9á9á1EA…IÍ √%A…=®9á1F1fA…5g£√)-$1F=®$‰)J 5fEÍ=® „1F)1f9á „É1F=®-%9á5f)1E=…5f=® B-%1E-%1E9á1F=®˛9áEÍ)-%5f)9áA…5g9à5f1f-E=©A J J 5gE N,=©=®5g$‰=©N,5gZèEÍ5á9àEÍJ 
  1013. d °dONLNd%œ8›˜(¯VASYNCHRONOUS ROUTINES°dONLNd;‹8Í¡*ON THE MACINTOSH°dONLNdLı8◊*INSIDE QUICKTIME AND°dONLNda8√*COMPONENT-BASED°dONLNdq8Ö*MANAGERS°dONLNdz(86‰*MACINTOSH DEBUGGING:°dONLNdè58CË*THE BELLY OF THE BEAST°dONLNd¶B8PÄ*    REVISITED°dONLNd∞[8iß*ADVENTURES IN°dONLNdæh8v´*COLOR PRINTING°dONLNdÕÅ8è‚*DEVICELOOP MEETS THE°dONLNd‚é8úœ*INTERFACE DESIGNER°dONLNdıß8µæ*LOOKING AHEAD TO°dONLNd¥8¬¯*PRINTING IN QUICKDRAW GX°dONLNdÕ8€¸*THE PALETTE MANAGER WAY°dONLNd7Ê8ÙA*K°dONLNd8Ê@Ùw)ON & BA°dONLNd?ÊwÙ)7L°dONLNd@Ê~ÙÌ)’S PUZZLE PAGE°dONLNdOˇ8≤((VMACINTOSH Q & A°dONLNd_8&È*NEW QUICKTIME COLUMN:°dONLNdu%83Ÿ*TOP 10 QUICKTIME TIPS°dONLNdãg8K*J °dONLNdç8ç<*I°dONLNdé=ço)ssue 13
  1014. °dONLNdïÄoåx)2   °dONLNdòÄxå≠)    
  1015. March 1993    °dONLNd•¿8Àç(ÁVApple Computer, Inc.ˇW@◊#ˇ ˇˇˇˇ#◊ 
  1016. d,     Helvetica    .°dONLNdâñî+¥∞E D I T O R I A L  S T A F F, Palatino°dONLNdòñ°⁄*Editor-in-Cheek  °dONLNd.ò⁄°)DCaroline Rose°dONLNd<¶ñØı(Ã¥Technical Buckstopper  °dONLNdS¶ıØ))_ Dave Johnson°dONLNd`¥ñΩø(⁄¥
  1017. Our Boss  °dONLNdj¥øΩÚ)) Greg Joswiak°dONLNdw¬ñÀΩ(Ë¥
  1018. His Boss  °dONLNdŬΩÀ)'David Krathwohl°dONLNdë–ñŸ”(ˆ¥Review Board  °dONLNdü–”ŸH)=Pete (“Luke”) Alexander, Neil°dONLNdΩfi¢Á2(¿%Day, C. K. Haun, Jim Reekes, Bryan K.°dONLNd„Ï¢ı3*%(“Beaker”) Ressler, Larry Rosenstein,°dONLNd    ˙¢#*Andy Shebanow, Gregg Williams°dONLNd'ñfi(.¥Managing Editor  °dONLNd8fi)HMonica Meffert°dONLNdGñ(<¥Assistant Managing Editor  °dONLNdb?)pCynthia Jasper°dONLNdq$ñ-Ì(J¥Contributing Editors  °dONLNdá$Ì-8)WLorraine Anderson,°dONLNdö2¢;B(X¿)Geta Carlson, Toni Haskell, Judy Helfand,°dONLNdƒ@¢I€*Rilla Reynolds°dONLNd”NñW∏(t¥    Indexer  °dONLNd‹N∏WÎ)"Ira Kleinberg°dONLNdÍiñt"(ê¥A R T  &  P R O D U C T I O N°dONLNdxñÅÏ*Production Manager  °dONLNdxÏÅ%)VHartley Lesser°dONLNd+ÜñèÃ(¨¥Art Director  °dONLNd9ÜÃè)6 Diane Wilcox°dONLNdFîñùÒ(∫¥Technical Illustration  °dONLNd^îÒùK)[Dave Olmos, John Ryan°dONLNdt¢ñ´≈(»¥ Formatting  °dONLNdÄ¢≈´
  1019. )/Forbes Mill Press°dONLNdí∞ñπ∫(÷¥
  1020. Printing  °dONLNdú∞∫π1)$Wolfer Printing Company, Inc.°dONLNd∫æñ«›(‰¥Film Preparation  °dONLNdÃæ›«)GAptos Post, Inc.°dONLNd›Ãñ’Δ(Ú¥ Production  °dONLNdÈÃΔ’)0PrePress Assembly°dONLNd˚⁄ñ„Õ(¥Photography  °dONLNd⁄Õ„D)7Sharon Beals, Lisa Jongewaard,°dONLNd'Ë¢ÒŸ(¿ Tom Sandborn°dONLNd4ˆñˇ·(¥Online Production °dONLNdFˆ·ˇ)K  Karen Brady0§z3Û
  1021. •{2ÚòÄxçwHH̆∞∑◊ˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇˇˇˇˇÃÃˇˇÃÃÃÃˇˇôôÃÃˇˇ    ffÃÃˇˇ
  1022. 33ÃÃˇˇ ÃÃˇˇ ˇˇôôˇˇÃÃôôˇˇôôôôˇˇffôôˇˇ33ôôˇˇôôˇˇˇˇffˇˇÃÃffˇˇôôffˇˇffffˇˇ33ffˇˇffˇˇˇˇ33ˇˇÃÃ33ˇˇôô33ˇˇff33ˇˇ3333ˇˇ33ˇˇˇˇˇˇÃÃˇˇ ôôˇˇ!ffˇˇ"33ˇˇ#ˇˇ$ˇˇˇˇÃÃ%ÃÃˇˇÃÃ&ôôˇˇÃÃ'ffˇˇÃÃ(33ˇˇÃÃ)ˇˇÃÃ*ˇˇÃÃÃÃ+ÃÃÃÃÃÃ,ôôÃÃÃÃ-ffÃÃÃÃ.33ÃÃÃÃ/ÃÃÃÃ0ˇˇôôÃÃ1ÃÃôôÃÃ2ôôôôÃÃ3ffôôÃÃ433ôôÃÃ5ôôÃÃ6ˇˇffÃÃ7ÃÃffÃÃ8ôôffÃÃ9ffffÃÃ:33ffÃÃ;ffÃÃ<ˇˇ33ÃÃ=ÃÃ33ÃÃ>ôô33ÃÃ?ff33ÃÃ@3333ÃÃA33ÃÃBˇˇÃÃCÃÃÃÃDôôÃÃEffÃÃF33ÃÃGÃÃHˇˇˇˇôôIÃÃˇˇôôJôôˇˇôôKffˇˇôôL33ˇˇôôMˇˇôôNˇˇÃÃôôOÃÃÃÃôôPôôÃÃôôQffÃÃôôR33ÃÃôôSÃÃôôTˇˇôôôôUÃÃôôôôVôôôôôôWffôôôôX33ôôôôYôôôôZˇˇffôô[ÃÃffôô\ôôffôô]ffffôô^33ffôô_ffôô`ˇˇ33ôôaÃÃ33ôôbôô33ôôcff33ôôd3333ôôe33ôôfˇˇôôgÃÃôôhôôôôiffôôj33ôôkôôlˇˇˇˇffmÃÃˇˇffnôôˇˇffoffˇˇffp33ˇˇffqˇˇffrˇˇÃÃffsÃÃÃÃfftôôÃÃffuffÃÃffv33ÃÃffwÃÃffxˇˇôôffyÃÃôôffzôôôôff{ffôôff|33ôôff}ôôff~ˇˇffffÃÃffffÄôôffffÅffffffÇ33ffffÉffffÑˇˇ33ffÖÃÃ33ffÜôô33ffáff33ffà3333ffâ33ff䡡ffãÃÃffåôôffçffffé33ffèffêˇˇˇˇ33ëÃÃˇˇ33íôôˇˇ33ìffˇˇ33î33ˇˇ33ïˇˇ33ñˇˇÃÃ33óÃÃÃÃ33òôôÃÃ33ôffÃÃ33ö33ÃÃ33õÃÃ33úˇˇôô33ùÃÃôô33ûôôôô33üffôô33†33ôô33°ôô33¢ˇˇff33£ÃÃff33§ôôff33•ffff33¶33ff33ßff33®ˇˇ3333©ÃÃ3333™ôô3333´ff3333¨333333≠3333Æˇˇ33ØÃÃ33∞ôô33±ff33≤3333≥33¥ˇˇˇˇµÃÃˇˇ∂ôôˇˇ∑ffˇˇ∏33ˇˇπˇˇ∫ˇˇÃêÃÃÃúôôÃÃΩffÃÃæ33ÃÃøÃÿˇˇôô¡ÃÃôô¬ôôôô√ffôôƒ33ôô≈ôôΔˇˇff«ÃÃff»ôôff…ffff 33ffÀffÃˇˇ33ÕÃÃ33Œôô33œff33–3333—33“ˇˇ”ÃÑôô’ff÷33◊çw•{2Úx{{˛Å{||ÇÅÅü¶ÇÇ{¶¶¨ÅÇ|¶¶¨¨≠ßßDz≠Çßß≠àßÇßÉß¶¨¶ß˛Ç˛¶.Ƕ¶—≠≠Çßß≠à≠ß≠¨—ßâà≠ßßÇ≠àß¶¨¶≠â≠¶¶à≠ßßÇ≠≠—¶ßÉÉDz≠Ƕ¶ßÉß¶≠â≠¶¶ÇßÇÇy{{zÅÅÇu|{Å{†ü¶W{{¶˛Ç$¶{¶Ç≠¶ßÇÉÇ≠Çâ¶ßÇ≠ǶÇßǶÅßß¶ÅÇŶ¶É|¶¶≠˛Ç≠¶¶Ç≠˛¶ ßǨ¶ßÉâÇ≠ߨÇßßâà≠†ÉÉ≠¶ßÇ≠Ç≠ÇÉ^ÉÇ≠˛ÇßÇàǶÇßÇßǶǶÅy{{˛Å%{|{{Ŷ†¶ÅÅ{¶¶¨Ç¶¶ ¶≠â≠¶ßÉß¶≠â≠¶ßÇ≠àÇÇ߲Ç≠¶¨Ç˛¶Éß¶˛≠"Ç≠≠—¶≠â≠¶ß¶¨¶ßÉâà¶¶≠àÉÇ≠ààÇßÉÉà—ßßDz≠ÇÉÉß¶¶Çßß≠ààǶ¶ßÉß¶ÇǶx˛{ÅzÅ{|˛{!¶{Ç{†{¶ÇÇ{¶¶ßÇàŶÇßÇ≠ÇßÇßÇ≠¶¶Çßß≠Dz¶ŶǶŨÇÉǶ¶≠Çɶ–¶ÉǶÇ≠˛¶≠dâ¶ßÇâÇÉÇßÇàÇß|¶¶≠ÉÉÇ≠˛ÇßÇà{¶ÇâÇâǶ{¶Ç¶ÇÇÅǶy&{{Ç{ÇŨ|†ü•ÅàÇ߆¶¶¨Ç¨¶ÀßßǨ¶—ßâਸ਼ÉÇ≠¨ß˛Ç≠ਸ਼¶Ç˛ßǨ¨≠Éß¶—≠≠É≠¨—ßßDz≠0¶Àßàà≠ß¶à≠à¶Ç≠à≠Çß¶≠àâÉß¶¶Çßß≠ආ¨àâÉß¶¶Çß¶ÇÇàÇßyq{ÅW|{¶ÅÇ{†üÅŶ|¶Ç¶ÇâǶ|ß|ßŨ¶ßââ¶¶Çâ¶À°ÉÇ≠ÇâǶÇÉÇ≠ÇÉǨ¶ßÉâÇ≠¶≠É≠¶≠Çßà≠Çß¶≠àâÇß|≠à¨ÇßÉßÇàÇß|ÇÇ≠ÇÇ|É|ßÇàǶÇà^Ƕ¶ÅǶ߲Ƕ¶y*{{Ç{††¶{ü{¶Å¶†ßǶ¶≠â≠¶¶Çß¶≠¶≠É≠âß¶âà≠¶ÀÇÉÇ≠˛ÇßÉâǨÉ⨗ß≠â≠¶˛≠&ɨ¨—ß≠à≠ßß¶≠¨¶ÇßɨŶÇßÉ≠à≠ÇßÇ≠¨≠ÇÉÉß¶¶Ç˛¶ÇÉDz¶Ç߶ɲǶy{Å{¶{¶Ç¶˛{.¶{Ç|¶Å¶ÇâǶÇâǶ¶ßÇàÇ߆ßàâÇß¶≠^¨¶ß|¶¶àǨÇÉÇ≠¶ßÉ≠˛Ç≠ßßǨÇßÇ≠¶ß|ߨ¨ÅÇÉßÅÇÇßÉÉÇ≠ÇÉÇ߲ÇßÇàdž{˛Ç{¶ÇÉÅ•ÇÉǶÇÇ|¶Åy;{ÇÇü√{â¶¶{|ǨǶ¶—¶ßÉß¶≠â≠¶ßß≠à≠ßßɨà≠ßßÇ≥àßÇßߨà≠ßßǨ≠≠ß—≠≠Dz≠%ß—¨âÉ≠≠–¶Éɨ¨≠ÉßǶÇßÉ≠à≠ßßÇßß≠Çßß≠à¶†ß˛Ç¨¶ßǶ•ßÉ≠¶¶|¶¶àx {Ç{üü¶Ç¶¶†{ÇÅ˝¶É|¶ÇàDzßÇàÇß¶¶Éâà¨ßß|≠à≠Çß¶≠ÇàÇß¶¨Çâɲ≠=¶¶ÇâÉßß≠ÇÉÉ—¶¶É⨨ÇßǶÇßÇßÇ≠àÉǶÇÉɶ|ÇÇàÇßÇÇŶǶ|†|¶Ç¶Ç¶|†{Ç]x{{˛¶{˛¶:|ÇŨ¶ ¶ßÉß¶¨à≠ßÀßâà≠¶ßÇÉǨ¨ßÉâਸ਼ßǨ¨≠ÇßÉ≠¨¨É≠â≠≠—¶≠à≠ß≠≠¨Ç˛≠ÇßÇ≠à≠ǶÇßÉßǶÇ≠ǶÇßÉß¶¨˛Ç˛ß|˛¶|¶†¶Ç¶ÇÇ|††¶Å¶y{¶Ç¶˛{¶˛Ç¶•¶˛Ç¶¶ß˛Ç`≠¶¶ÇâǨÇÉ}ß•¨¶ÉÉâ¶ßÉâÅ≠ß≠ÇÉǨ¶ßÉâÉßß≠¶¶ÇâÉßǨà≠ÉÉ|¶ÇâÇÇŶÇßǶÇÉɨÅÇ|°|ÇÅàÅÇǶ|}Ǩ{†|¶Ç¶ÇÇ^dž¶Å¶Çy{{¶Ç¶{{ü≠ÇǶÀ¶¶Ç¶¶ÀßßDz≠Z¶ßÉ≠à≠Éß¶¨Ç≠ß≠ਸ਼ßÇ≠ß≠ß≠É≠¶—ß≠É≠ß≠≠—¶≠â≠ߨ¨≠â≠Çß¶ßǨÅÇÉÀ¶àÇßÉßǨÇ߆ßǶ¶¨Ç¶¶ß}ß¶¶†¶Çß¶¶Çàdž†˛¶w
  1023. {ÇǶ¶{{¶¶ÇDz¶˛Ç¶ÇÉǶ¶≠ÇÇ|ßààÇß¶¨Çâ¶ß¶≠àâÇß¶≠˛É≠Ƕ¶≠˛É≠¨¨¶ßÉâǶ¶≠ÉÉǨÇß|¶ÇÇ^ßß¶ÅÇÉ߲Ƕ˝Ç|†|ÇǶ˛Ç¶ÇÇ|†|ÇÅ•ÇÇ|†¶¶Çy7{{¶Ç¶{¶{¶Ç¶Ç¶¶ßǶ¶ßÉ≠¶≠ßßÇßÉ≠à≠¶ßÇâàß¶≠ààÇÉǶ¶≠ÉâÉ—¶¨≠≠ɲ≠Ũß≠ɨÇ≠ßßÇ≠àâDz¶*ÇÉÉß¶¶ÇâǶ|Ƕ¶ÇàǶ†¶Ç¶Ç¨Ç¶Ç¶Ç¶|¶Ç¨•¶{ÇǶÇÇy    {ÇǶǶ{ü{¶˛Ç,¶ÇÇŶÇÉǨÇÉ|¶|ÉǨ¶ß|ÉǨ¶ßÉ≠ÇÉÇÇŶßâÉß¶¨àâÉß¶≠˛Ç,≠ßßÇàÇ߆¶Çâ^àǶ|¶ÉÉ|†ü¶ÅàÇ||¶ÇÇŶÇÇ|¶ÇÇŶ||Ũ˛|
  1024. ¶Ç¶{ü{¶Ç¶Çy{ǶǶǶ{˛¶Ç˛¶HÇ≠ßßÇ≠¨≠É≠ÇßÉ≠¨¨Ç≠É≠¶≠â≠ßÀÉâǨ†ßà≥ß—≠≥ââ¶—ß≠É≠≠—¶≠â≠ß—¶ßÉâà¶Ç¶ÇÉǶ|††¨ÇÇ|˛¶Ƕ†¶Ç¨¶¶Ç¶††|¨à¶|˛¶Ç¶†¶Ç¨Ç¶x{Ç{¶{¶Ç¶Ç¶|†ü•ÅÇÇ߲Ƕ¶≠˛Ç0ß¶¨ÇâÇ߆≠àâÇßß≠à≠¶°|àà≠ß≠âÉǨ¶ßÉâÉß¶¨¶ßÉâǶ{ÉÉß¶¶˛Ç˛¶|˛¶Ç˛¶Ƕ†||¶˛Ç¶˛|¶˛Ç¶˛{¶Ç¶|†{¶¶yU{{¶{ü{¶Ç¨Çß|†•´ÇßÉßǶ¶≠¨≠Ç≠¶ßÉâ⨶ÀÉàà߰ߨ≤≠ß|ÇÅàß—¨≠É≠Ç≠ß≠≠ßß≠à≠¶≠â≠¶¶ÇÉÇ ¶É^Ƕ¶|ÇǶDz¶Ǩ¶¶|˛¶|˛¶|˛¶{˛¶
  1025. {¶Ç¶Ç¶|¶Å¨y{¶{¶{ü˛Ç¶|†{ÅŶ˛Ç"¶¶ßÇÇ|ß¶¨¶ßÉâǶ°≠àà¶ß†¨¨≠}É^ÇÇß¶¨Ç≠˛É≠¶¶†ßÉâǶÇÉǶÇÇ|¶¶ßÇÉDz¶ÇÇŶ¶†|ÇǶ|ÇǶ˛|¶ÅÇǶ˛{ ¶ÇÇ|†{•Ƕ|¶Åy,{{¶{¶{¶Ç¶Å¶|¶Ç¨¶¶|Ƕ—ßßÇßߨ•≠ßââ≠¶ßÇâà߰ߨ¨Ç߲Ƕ¶ßDz≠ß≠à≠¶—≠≠Ç≠¶ß¶ßÇàǶ†¶Çâ˛Ç'¶¶É^à¶ ††Ç¶Ç¶Ç¨Ç¶†¶•¨¶ß|ÇŶ•¶|ß|•ŶÇß¶¨x{Ç{¶ü¶Ç¶ü{{¶¶ÇǶ||{¨¶ß˛ÇßǨ¶≠ÉâǶ†≠à≠Çßß≠Ç≠ßß˛Ç ¶|ÉÉ≠ßßÇàÇßß≠˛Ç    ß¶¶Çâd¨††|˝Ç¶¶ßÇÉǶ˛|¶˛Ç¶ÇÇ|†{ÅŶ||XÇÅ•{||¶{ü{¶Ç¶¶w{{Çüü{â¶¶{{¶≠Ç߆¶{¨ß≠Dz≠¶ßÇ≠¶≠ÉÇDz≠$Çßß≠ß≠â≠ǶÇÇ|¶Çâ≠≠Ǩà≠ßÀß≠Ƕ¶ßÇÉÇ≠ß¶|¸Ç ¶¶ÇÉÉß|¶ÇÇ|¶Ç˛¶Ç˛¶|ÇǶ{Ç|˛¶
  1026. |¶{¶Ç¶Ç¶{¶w˛{¶{ÇǶ˛{!¶ÇÇ|†{ÅÇß|ÇÇ≠¶¶|ÉǨ¶ß|Çà≠¶¶Ç¨à≠ÉâDz¶{|XÇÇ≠˛Ç≠ßß°ßÇàŶÉÉ^ÇÇß˝Ç|ÇǶÅÇÇß|}|¨Å||˛¶ÇÇŶ||XÇÅ•{||¶ÇÇW{{¶ÇÇ{¶Çy {{Ç{¶ü¶Ç≠¶¶{˛¶!†¶Ç¨¶ß¶≠É≠¶ßÉ≠à≠°ß¶≥≠≠Ƕ¨≥≠ßÇ≠É≠Ǩ˛|¨Ç≠É≠≠—¶ßÉ≠à≠ÉßÉßÇßÇâǶǶ˛Ç#≠¶ß¶≠Çɶ–††|¨¶¶Ç¶ü¶|ÉǶü¶Ç¶•¶|ÇÅ–¶Ç|˛¶x˛{    ÇǶüÇÇ≠üü{˛¶ÇÇ|˛¶ÇÉǶ†ßÇâÇß¶¨¶≠Éß¶˛≠Ƕ¶ßÇàŶ|˛Ç|ßß≠¶¶ÇÉǨÇÉÉßÇÇ{ÇDz¶||˛ÇßǶÅÇ|ß¶¶|ÇǶÇÇ{ü{˛Ç|†|ÇÅ•{}|¶Å¶{|Ƕ¶y{{˛Ç üüÅâ¶ üüÇ≠¶¶Ç߆¶¶≠ßßǶ¶ßÉ≠à¶¶—ßÉDz≠!ÇɶßÇâǨŨÉÉ|¶¶≠ß≠â≠¶ßÇß¶ßɨÅÇ|ÇǨ˛|    ÇǶÉ≠ਸ਼ß|˛¶ÇǶ¶|ÇǶ†¶ÅÇ|ß¶´Å||ß¶¶|††¶¶ x˛{Çņ{†{˛¶<{Ç|¶ÇÇ|†{¶¶ßÇÇŶ†ßÇàŶßß|ÇÇ≠ßßÇ≠ß¶{ÇǨÇâX|{¶ÇßÉâǶ|É|¶ÇÉÇÇ||W˛Ç+||ǶÇÉÉ≠Ŷ|ÇǶǶ|¶||XÇ|†{•{||¶ÅÅW|†¶ÇÇ|¶{¶Çx{{ÅŨdžü¶Ç¶¶ ü¶Ç≠¶¶Å¶†ßÇ≠˛¶!ßǨ¶–¶ßÉÉŶ†ßÇ≠â—¶|{ÉǨÇÉÇß¶ßÇ≠â≠DzßǶ¶≠ÉÉ˝Ç|††ÇÇßÉÉǨ¶¶Ç¶Ç¨¶¶|˛¶{ÇǨ¶¶|ß¶¨Å¶ü¶Ç≠¶¶|¶Ç¶x˛{ÅÅÇ{ü{¶Ç¶ü√{ÇǶ{Å{†{ÇǶ†¶Å¶|˛¶ |ÉÇÇ{†|ÇWÇǶ˛{ÇWÇÅÇÇ߲Ç
  1027. ≠ǶÇßǶŶÇɲÇÉ^Ç|¶ÅÇDzÉ#ǶǶǶ|¶ÇÇ|¶ü{WÇǶ|ÇŶ|Çü¶{ÇǶ|††¶^w{{ÇÅÇ{†{¶Ç¶{†ü¨Å¶††{˛¶3Ŷ¶ß|¶Å¶|¨¶ßÇàà߆|WWXÉǶ{{W{{ÅÇ≠ßßÇÉÉß¶¨à≠ß¶ÇÉÉß¶ßÇɸǶÇɲǨǶ|¶˛Ç¶üü{¨¶¶|ÉǶ•¶|˛¶ÇÇ|¶†¶ÇÇv˛{LÇŶ{†{¶Åü{ÇÇ´{†u{{¶{Å{Ç{†{•{|Ŷü†Å≠ɶ{{WXQ|ÅÇWWP{WÇ|ß|ÇÇÉǶÇàÇßÇÉÇß¶ßÇÉÇÇÅÇǶ¸Ç"¶Ç¶|†|Ç^Ç{†{ÇǶ{||ÇÅ•{†|¶ÇÇW|†¶Ç¶ÇyH{{ÅŨdžü¶Ç¶•¶|¶•¶|ÇÅ•ü†|ÇÅ•ü¶ÇÇ{¶¶†{¶¶≠ǶÇÇ||{Ç^Ç{tPÇ||{ÇÉß¶≠â≠¶¶ÇÉÉß¶ßÉɲǶ¶ÉÇ߲ǨǶ†¶˛Ç¶†¶ÇâǶü¶Ç¶†¶Ç¶†ß|¨ÇÇ|¶¶¨Ç¶x˛{•ÅDz{F¶{¶Å†{¶{|WÅz•{|{Åzü{ÇWÇ{¶{ü{¶Å¶Ç¶|Ç||QWW{P{Q|Q{{É|¶àâǶÇÉ^ɶ¶ÇÉÇÇ^¶¶ßÇɲÇ$¶†¶ÇÇ|¶ÇÇ|†{Ç^Ç{ü{Ç|†ÅÇŶ|¶Å¶|¶Ç¶|¶Çv{{˛¶ {Ç|¶ü¶Ç¶ü¶ÇDz{˛Å{˛ü˛{%ÇÇ|{••†{¶ÅÇ|ß¶àXRtÄV{uuW{{||ßÇââ≠¶ßÉÉDz¶ÇÉÇÉǶ¶˝Ç߆†|ÇDz¶|††¨ÅÇ|˛¶|ß¶¶ÅÇ|¶¶¨Ç¶Ç¶Ç†|ßx˛{`¶ÅÅ{|{•üÇW{{¶{{t{{ÅW{uü{{VÅ{Ç{ü{ÇW†ü•^dž¶^^Q{PW,QP{VWP{{Ç^≠Ƕ|ßÇÇÅÇÅÇÇÉǶÅÇÅÇ^ÉÉßü||ÇǶ||v¶ÅáW||¶˛|¶ÅüWÇ|¶|ÇǶǶ|¶Çq{{ÅŨÅ{|¶•¶||{˛•˛{ü{{W˝{•ÅÅ{˛ü{ÇÇ•{ÇǶÇàÇÇ{{QQP{{W,W{{WÉß≠Dz߸ÇÉɲ¶¸Ç%ÉǶ|dž¨ÇÇ|ß¶¨ÅÇ|¶¶ß|ÇŶ†¶Ç¨¶¶|¶¶ÇǶ¶Çw˛{˛Å7u||¶Å{u|{Åzüu{W{W{V{V{{Åz{uüzÇ|Ç{ü|¶ÇàÇ≠ÇÇ{|Q{PP,PW{PPu߲Ç1≠ÇÉÇÇÅÇÉß¶¶ÇÉÇÇÅÇ|ÇǶ|†|¶ÇÇ|¶üÇXÇ|†{ÇŶ|†|¶ÇÇ||†¶|˛¶]t{{ÅŨ{˛|••{||ÇÅ•üüW{{ü{{VÅ˙{ •ü|{Çņ†¶ààÇ߲Çß||,WWÇWPItvÉÇàà≠ß߲ÇÉÉß¶ÇÇÉǨ{||Ƕ¶˛|¶Ç˛¶
  1028. |ÇǶ†¶Å¨¶¶|˛¶˛Ç†|¶Ç¶Ç¶v¸{Å{||üzÅW|XÅzü{WW{z{V˛{/QWW{{•{üu{]Çü¶¶àÇß¶¶^ÉǶWXW{WWPt%QWÇÇɶßÇÇ^ÇÇßÇɲÇàÅ|{ÇŶ†|XÇǶ|Ç|Ç{ü{¶{¶|¶|ÇǶ|˛Ç|¶˛Ç¶Çt¸{ÅÇ|†ü•zÅ|Ç{•üüW|{{zü{†{{W{{••˝{#ÇÇ—¶¶Éɶ¶ÇÉÉâǨÉß{{WÇ{Q&VÅ≠Éß¶ßÉÉÇ ¶˛É˛Ç"É|ÇǨ††|âǶ††ÇàǶü¶Ç≠¶¶|¶¶¨Ç¶†¶Ç¨¶¶˛Ç¶v¸{ÅÅ{u†üÅW{WÅ{üu{WWVzz˛{
  1029. W{W{{üu{{¶{˛¶ÇÉÉß•ÇÇɲÇâÇDz{|QQOV{ɲǠÉ^¶•ßÉÉÇÇÅÇ|ÇǶ¶†v¶Çà{üüÇ^Ç|†{ÇǶ˛{¨Çdž†{Ƕ¶ÇÇ|ßÇn¸{Ŷ{ü|¶˛{˛Å    {ü{{W{z{{|˙{ •{Ç{¶ü¶ÇÉÇÉÇ߸ÇÉÉâÇÇ{||Ç{{P{ÇàDzÉǶÇßɲDz|ß¶¶|¶†¶Ç¶ü•ÇàǶ†¶Ç˛¶{˛¶ Ƕ†ßǶǶ|†|ßw˝{u{{Å{{uÇ{üz{W{zzV{W{z˛{V{W|Q{{•{|{•ü¶ÇÇ]ÇÇßÇÇ||X˛ÇÅÇ||{ÅW{QWWÇǶÇɲǶŶÇDz|$ÇŶ|†|ÇǶ{Ç|†|ÇǶ||{¶ÅÇ{ü{ÇÇßÇÇ|†{¶Çr˚{ÅŶ{||¶üüW|{{zü{|˛{|{Å{||Ç{•{•|Ç{ü|ÉÇàÇɶ¨¶Ç|˚ÇÉ|Ç]Ç|vQÇÇ≠¶ßÉɲÇß¶¶ÇDz|≠¶¶˛|¶¶≠Ƕ†¶Ç¨¶¶|¶¶≠Ƕü¶Ç˛ßdž|ßǶq¸{Ş{Ş{•{{W{z¸{˛W{z{{†{Åz{{¶Ç¶{|ÇÇÅÇ|ÇǶ|˛Ç˛| Ç||W]WuQWWÇÇßǶÇÇ]ÇÉß|¶ÅÅWÇÉ≠¶||¶˛Ç¶|˝Ç¶˛|¶ÇÇ{¶|Ç|¶ÇÇ{¶Çß¶r˝{
  1030. ÅŶ{{Ŷuu{Å˙{ü{{W˛{z††Å{†˛{¶ü¶{˛Ç|Ç|Ƕ¨˝Ç|Ç|¶|ÇW{u{WzPÇÉ≠¶¶˛ÇÉ|°†ÇÅÅÇɶ¶|Ƕ¨Çdž¶˛Ç≠¶¶|˛¶Ǩ¶†|¶˛Ç¶¶ÉǶn¯{ÅÅ{P˛Åu˙{Q{VÅV˛{V{|†V{{¶{˛ÇK|Ç||{ÇÅÇX||ÇX|{Å{|PQQ|%OVÉÉß|¶ÇÇ^||}ÇÇÅÇ|††Ç|¶ÇÇ|†|ÇÇßÇÇ{†|ÇǶÇÇ|†|Ç]ǶßÇß¶sü˛{ü˛{¶Å•u{Åů{ †{ÅÅ|{Å{Å{††¶˛{≠¶ß||ÇÇ|¶˛Çɲ|ß|ÇŶ|uP|{P%{|ÉÉ≠˛Ç+¶ÇÇ|ÉǨÅdž°Ç¨¶¶|¶†¶Ç≠ßßǶ†¶Ç≠¶¶|¶†¶Ç¨¶ßÉßǶd˚{u˚{Åı{ÅÅu{{Å{{u†ü†u{ǨÇ||ÇÅDz|ÇÇ{u||DzW{˛Q{VVP||˝Ç˛¶˛|˝Ç°†¶Å¨˛|¶ÇÉÉ߲|¶˛Ç¶˛|¶˛ÇßÇß|¶Çu{{ü˙{|{Ç{Å{ü{Ş{ü˛{¨Å{uÇǶzÅ{†öü{ÇǨ††{¨ÇDz|ÇW||ÇÅÇW{W{Q{{ÇW{uÇǶ˛Ç¶Çà˛|%ÇǶ|߆¶Ç¶|¶Ç≠Éß¶¶|ß¶¨Ç¨¶°|¶ÇÇ|¶¶âǶ|ÉtW˛{WW˛z{{|¸{
  1031. •{WQü{{Q{Å•˛{|{üVÅ{†ü¶ÅÇŶ|˛Ç˛|{VWQ|{Å{|QWV{t{XXQ{{ÇǶ˛|˛Ç ||ǶÇÇ|°|ÇǶ{˝Ç¶˛|ßǨŶ}}Ƕ{||¶Ç¶|¶Éy Ç{üW]W{zü{|{|˛{>¶•ÅQ|•üu{ÅÇ{¶||{üü¶{Ç{¶ü¶Å¶†ƒ†ÇÇÉÇÇ{{QX{¶{¶|ÇW{z•|YXÇ{ÇǨ¶||ÇÇà˛|
  1032. ¶¶–Çdžß}ɶ¨˛Ç¨¶¶|˛ß•¶ÇßÇ≠Ƕ|¶Ç¶|ßÉßt{{˛Wzz˙{u{Ŷ{u{¶{u{Å{{††{ÅV†ö†{Å]¶ü¶|††¶˝Ç{{˛Q{{||ÇWWPt{ÇXXW{{ÇŶ{|˛Ç||ÇDz¶Ƕ†}|¶¶ÇǶÇÇŶÇÉ|†|ÇǶ˛Ç¶Ç¶|°Éß¶t{{Ç{{tü{Å˙{Å{¶˛{||¶{•{¶{•W{{ üÇWÇü¶ÅÇ|†|˛Ç{Ç{{Q˛{W˛ÇW{t|ÇÇW|WÇ{Ç{Ç|Ç|Ç|˝Ç¶Ç˛¶|˛ßǶ†¶Ç¶¶ßÉ߆¶Ç¨¶¶Ç¶¶ÇÇß°ÉÇ uP{Å{tuWÅV˙{ P{{•{uWÇ{üt{ÅÅ{{Q|••{|{•{¶Ç¶|¶ÇÇW˛{    PWW{PWQ||Dz{
  1033. Ç{{QXWÅ{|ÇDz{(ÇÅÇÇ|XÇǶÅÇÇßÇÇ|†|ÇǶÇÉǶ{ÇǶÇÇ|†|ÇÉßǶ†y+{{Åzü{ÅWÅ{†ü†{ÅWÅ{•ü†vÇŶüü{¨ÇÅu°†´ÅÇ|•{ß¶¶Ç˛¶#XÇǶ{WQ{z{Q{{¶ÇÇ|É|{{|XÅWÇÇàÇ|u||¨Ç¶˛|ÇÇ≠Çßß≠Ƕ†À¶¶Ç≠ßß|˛¶ Ǩ¶¶|ßß≠Ǩ|†v{{Vzû{Q˝{1††|VÅW{{ü{|{Å{{ôüÅÇW{†¶ÅÇ|¶{•|¶|¶Ç¶||X¶{Å-QPzPQQ{{˛Ç||˛{|QW^˛Ç{{|ÇǶ††|˛Ç˛|ßÉÉDz¶˛Ç߲|¶˛Ç
  1034. ¶Åǰ°|¶Ç¶|yM{QÅÅ•{uu{{¶{†{•{†{|{•ü†{Å{††¶Å¶†¶{¶|Ç{•{¶|¶Ç¶ÇßÉß|¶Å^R|z{u{QÅŨÇÇ{Ç||{XXÇÇß{Å{˛É|¶|˛Ç{{uÇÇßÉßDz¶Ƕ¶ß|˛¶ |¶Ç¨Çß}ßǶǶxOP{{ÅÅ{u{{Å{{P{{ü{|WÅzü{|WÅ{†{Å{†{Å|¶{Å{¶††|¶•ÇÇ߆†{ÇXXW|{{QQVÅ{|WÅ{|u{W^^dž†{ÇÉɲ|˛Ç!||u{{ÇÇßÇÇŶÇÇŶ|}Ǩü†|ǶßÇÉ|†|¶Çw˝{¶ÅÅ{üü•˛{i†|Ç{Å{†|¶•¶|ÇŶü¶Å¶†¶|¶{Ç| |ÇÇ–ÇdžÀ|ÇÇÉ|ÉǶ{|QÅV{u|WÇ{¶{|XÇdž†¶ßâÇÇ|ÉÇ≠¶¶|Ç||{ÇÉ≠ǶǶǨÇß°¶á¶|¶†Àß≠Ç||ßǶxV{uu{˛Å{üu˝{$|{Åzü{|{•{|WÅ{¶{Å{¶|Ç{•|¶|¶Ç¶Ç¶|†|Ç^Dz| Ç{{u|WVPuQWP˛{PW|Ç|ÇÇß}|{Ç^ÉDz¶Ç|Q{WÇ|¶˛Ç¶ÇÇ|°|à]Dz†ßÇÇ|†¶¶ÇyVP{{ÅÅ•üü{†||WÅüü{˛Ç{üü¶|¶ü¶|¶ü¶{¶{•{¶|ÇǶ|Ç|¶˛Ç&âà¶|†{{W||ÇzzPWVQJ{VWQ††ßÅÅ|É|ÅÇÉÉǶ¨ÇDz|{P|¶ßDz¶|ß¶¶Ç¨¶††ßÇÉ|°†¶Å¶ycO{{ÅV{{üu{W|{Åzüt{WÇ{{zü{Ç{ü{Ç|¶{Å{¶{¶|¶{Çdžv¶ÇÇ^ÉǨÅÇ{|VWW|u{PVPVJuPQ,Pu†|ÇV|vÇ]ÇÇÉ|¶¶ÇX||ÇWWußÇÇŶ˛|¶ÅÇǶ††|ÇÇÉ|†Å¶ÇySzz{{Å{||†{ÅŶüü{ü{ÇǶü¶|¶ü¶Ç߆¶Å¶†¶{¶†¶{¶Å¶|††ÇÉ≠ß¶ÇàÇÇ|ÇÅÅ{|Q{V{P{u|QPPü{ÇXÇ{|{ÅÇÉ}˛¶Ç˛ßǨÇßÇ≠¶¶Çß°ßǨ¶¶Ç¶†ÇÇ≠¶†|˛¶tV˚{˛|+zÅņu{{Å{Ç{†{Ç{ü{Ç|¶{¶ü¶{Ç|¶Å•{¶|¶†¶XÉÉß|ÇWDz|ÇÅŞQ{P{P{QQPPO{QXQ˝{ Ç^É|¶{ÇÇßǶ•≠˛Ç¶ÇÇ|°|ÇǶ|Ç|¶|Ƕ¶|Ƕ¶^xPz¶¶|˛{|ü•ÄÅ||{˛•{††ßǶ•¶|¶¶ †•{¶|¶Å¶{||˛¶|ÇÇßÉß{ÅÇÇ{||Ç]{uuP˛{P˛|˛P-{uuWÅ{{WÉǶ|†¶ßÉ≠¶ ¶¶Çßß≠Ƕ†ßǨ¶¶|¶¶¨Ç†|¶Ç¶ÇÉxP{{¶˝{zü{{W|˛{•˛{A†|ÇÅ•{†{¶†¶Ådž°|ÅÅü||ǨÇ||¶¶ÉÇÇ{ÇW{tuWÇQuJ{P{PtQ|XWPz{{QW{{KW^¨¶||˛¶Ƕ†¶˛ÇßÇÇ{†{ÇÇß||{¶ÇÇ|†|ÇǶÇv˝{|{Å••{˛|{˛•˛{¶¶ß|¶¶ •¶|ß¶¨Ç††¶Å•{†|˛¶|°°≠Dz¶W˛{P{||P˛{Ptt{XÇ|Å{|X|WÅuuWǶ≠ÉÉÇ–¶¶|˛ßDz¶Ǩ¶¶|˛ß Ƕ†¶Ç¶†||¶¶ßyz{Q{u{{˛• Q||{z••{P{{¶˛|¶••{||¶ÇÇ{††¶Å•††Ç¶¶†|߲Ç#¶|{V{VWQvPzP{PPntPWQ|WÅXÇX{z{QX{¶¶ßDz¶|Ç|߲Ƕ|ÇŶ|°|ßǶ|†|¶Ç¶|†|¶¶vz{||{{˛•{˛|{˛•˛{    ¶¶ß|¶¶–¶¶|˛¶ÅÅ|߆¨•†|ÇǶ†¶˝Ç||˝{WWQ{zz˛PuuVP{u{WÇÇ|{zWXX°†¶˛Ç¶ßßÇǶ¨Çß°ßÅàÇß°ßǨ¶†|¶¶ÇǶ††|¶y+z{{Ç{{u••Å{|{Å{•z{u†|¶Å¶{|†¶|Ç|¶†¶ÅÇ|¶†¶{ÇǶ˛†@ÇWÇ|Ç{{u{P{VWP{PP%JP{PtJQ,X||QPO{XÉ|¶ÅÇŶ¶ß}Ç{¶ÅÇ|°†¶ÅÇ|°|ÇŶ||†¶˛Ç¶u|Çx {{ÅŶ{üü¶||{˛•˛{††ßǶ•¶|ß¶–¶†|ß¶¨Ç¶|††ÀÇÇ|††¶ÇÇ|˛Ç{{Q{zÅW|u|QPIWW{ttPWXÇ{{PPWÉÉß¶¶˛Ç—ßß|¶Å¶|ßßÀ¶¨Ç¶†¶Ç˛¶
  1035. |¶¶ßÉÉ|¶|Çx˛{Å{•zü{|XÅz•û{Q|{¶ÅÇ{†ü¶Ç¶†¶|ÇDz¶|†|ß¶≠Ç|v˛¶||{ÇÅÇuuP{V{u{QX,OOtPtIPQXQ˛{)W||ÉÇß¶¶Å¶¶ß|†|¶Å¶|ßÇß||{¶ÇÇ|†|ÇŶ|É|ß|¶Çr¸{%••{{|ÇÅ•üü{||¶•¶Ç߆¶¶¨Ç†† ¶ÇǶ††|ÇÇ߶߲|˛¶|ÇÅÅ||{{W˝{ÇXWP˛t˛PQQW{¶¶≠˛|˛ß"Ǩ¶ßǶ††|ß¶¶Ç≠ßß|¶¶¨Ç¶†¶Ç≠††|ß߶Ƕx˛{•{¶{{P{{•züu|{¶{Ç{¶†¶|ÇǶ{˛¶W||Ç †Ç^Ƕ߆°|ÇǶ||{¶{WQ||ÇWtPXWÇW{P{PVPPJP,WÇßÇÇ{||ßǶ•¶ÇÇ{†|ÉǶÅÇ|†|ÇǶ††|¶Å¶|°|¶Çß|¶Çx˛{ü…¶|{|{˛•'{||¶•¶|ß¶–¶¶|¶¶—¶¶†Ç|¶¶–¶¨Çß°≈†¨ÇǶ¶|ß¶¶˛W?ÉÇ{t{XÇŶ||WÇ{{PutVWÉßÀǶ†¶|ÉÇ ¶¨Ç¶†ßÉ≠¶¨Ç¶†ßǨ¶ †¶Ç¨¶°}ß¶¶|¶†Éx˛{üü•W|{üz•ÅÇu†{•{†|¶Ç¶|†{¶¶ß††|ÇŞ¶9Ƕ|°† ¶ÇǶ¶É|¶¶ÇWQQ||{W]WÇ|ÇWÇ||P{u{V]^ß¶¶Ç¶†}}ß¶ ¶Ç|††ÇǶ˛|ßÇàǶ|†|¶Ç¶v†Ç¨Å†|ßÇx{{˛üzÅW|ü•ÅÇX†ü•Ŷ†¶Ç¨¶ƒ†¶Ç≠ßÀ†¶Çß˝¶:|}|¶¶ßǨ¶¶Çß¶¶ÇÇP{|}|ÇÅÇ|ÇÇ≠Çß|†{|{ÅÅÉÇßǶÇß}°† ¶¶Ç¶|¶Ç≠¶¶|˛ßDz¶|˛¶
  1036. Ƕ†ÇǶ¶É|Àx˛{t¶{ÅV{{•ûÅW||•z{{†|ÇǶ††{ÇǶ†¶Å¶ÇßǶ|†|ÇÇÉǶǶǶǶ|}|¶{ÇX|Å´{|{¶ÇÉ|¶{|WÇ]ÇǶǶÅÇ}}|¶¶Ç|†|ÇÇß||{¶ÇÇ|††¶ÇÇ|†|Ƕ¶{|¶ß|߆x{{•Ŷ||{˛•{||¶••{††¶Ç¶¶ †¶Ç˝¶,—ßÉÉß¶||¶¶≠Éɶ¶Ç≠¶¶ÇÉ}ß¶≠ÇÇ|¶à¶|ß¶ßÉ≠¶¶|ÉǨǶ˛Ç'ß}ß¶–¶¶Ç¶†¶Ç≠ßß|¶¶¨Ç¶†¶¶¨Ç††¶Ç¨|†|¶Ç≠}°w˛{•ÅÇuüû•Å|v†{Å{†{Å{†|ÇǶ˛†¶ÅǶßÇǶ¶˛|¶˝Ç$|ÇÇß¶Ç^Ç|¶ÇÇ|†|ÇÇ߆†|ÇǶ|¶ÉÉǶǶÇß}ß|˛¶|†|¶|¶Çß|†|¶Ç¶††|ÇǶ˛|
  1037. ¨ÇÇ|†|¶Çßvy&{{••¶{††¶ÅÅ{†ü•ÅÇ|¶Å¶†ßǶǶ†¶¶ßÇßǶǶÇà˛|¶ÇÇ|Ç|߶߲Ç≠¶¶|¶†¶Ç˛ß
  1038. †¶ÇÉǨ¶ßÉßDz¶(|ÉÇÀ¶¶Ç¶††|¶¶ß|߆¶Ç¶†ß†ßǶ†¶|¶¶ÇǶ†¶Ç¶Çßw{ü{¶{•{†{•Å{u†ü¶{|{•ü††¶˛|    ¶•¶¶ßÇdž†|˛ÇR|{ÇÅÇX||¶¶Ç^ÉǶü†|ÇǶ˛| ¶ÅÇ|°¶¨Åß}}|˛¶Çß¶ß{Ƕ¶˛|¶˛|˛¶˛|ßÇÇ{†|Ç|†|ÇǶ†¶{¶ÇyU{{†Ç¶üü{¶¶•{††¶Å¶|¶• †¶Ç¶|¶¶–¶ßÉ≠dž|¶ÇÇ||{{W≠Ƕ|ÇǶÇßÉß¶ †¶Ç¨¶¶|ßǨÇß°¶à≠ß°|¶¶¨¶¶Çß}߆˛¶†¶|¶|¶Ç˛¶|˛ßǶ†¶|¶†¶Ç≠¶¶|¶Ç¶u˛{˛¶t{{¶{{u†|¶Å†{•ü†|Ç|††˛¶ÇÉǶ||ÅÇ||{{V^Ƕ|˝Çß}}|¶˛Ç¶||{¶ÇÉǶ††|Ƕ߆¶Ç˛¶†¶Çß}°|˛¶˛|¶˛|¶ÇÇ|†|ÇǶ††|Ç|†Éß¶¶|¶¶xV{{¶Ç¶üü{Ç{¶{ü†¶Å¶†¶Å¶†ßǶ†ßǶ¶ßǶ|†{•ÅÇ|{W|^Ç{††ßÇ≠¶ß|†¶¶Ç¨¶¶|¶ÇßÉ≠¶†{¶¶ß¶¶ÇßǶ†¶Ç¶¶ß|Ç˝¶|¶Ç¶|†Ç¶Ç¶|¶Ç¶| †Çdž†ÉÇ≠†|| w˛{
  1039. ¶{üü¶{üu{{¶˛{¶˛{˛¶ü†|ÉDz¶ÇÇ|†u]^^W{|Ç]{{ßÇÉǶ˛|¶ÅÇǶ††|ÇÇß¶¶{||˛¶ÇÉÇ߆†{Ƕ†|ÇǶ˛| ¶ÇÇ|†|Ç|†{ÇǶ˛| ¶ÇÇ|†|ÇǶ|†¶y {üüÇÇ{üǨüü{˛¶{˛¶{˛¶X†¶ÇßÇ≠¶ ¶¶Ç¶††|Ç]Ç{Ç|Ç{¶Ç≠¶¶|¶†ßÇ≠Ƕ|¶†¶Ç≠¶¶†ß¶ß¶¨Ç¶¶À†¶Ç¨Ç¶†¶Çà¶¶†¶Ç¨Çß|ßŶ|ßǶ|¶|¶Ç¶†¶Ç˛¶|¶Ç¶v{ü{¶Ç¶{ÇÇü{ÇÅüu|{•ü†{¶{†|ÇǸ¶||†¶|ÇXÅ{Ç|Ç|¶˛Ç¶˛|¶ÇÉǶ˛|˛¶ÇÇ|††ß¶¶˛Ç¶††|¶Ç¶|˛¶!|††¶ÇÇ|†|ÉÇ•{}|¶{||¶ÇÇ|†|ÇǶ|†Ç¶|x{{¶ü¶ü¶|Çü¶ÇÇü††¶{¶†¶{¶†¶|˝¶Y–¶||¶¶Ç|Ç{ü{àÇǶßÇɶ ¶¶|ßÇ≠¶¶|Ƕ–¶ß|߆ßÇ≠¶¶| †°|¶Ç¶|†¶¶Çdž¶†¶Ç¶†ßǶü¶¶ß|¶Ç¶Ç¶|¶|¶Ç¶|††¶ÇÇr{˛¶ ü•Ç|{•ÅÇuüü¶˛{¶˛ü¶˛|¸¶||Ƕ||Ƕü•ÇÇ|¶¶}|˛¶˛|˛¶˛|˛¶†°†¶ÅÇǶ††¶ß|}¶¶||† ˛|¶˛|¶††|Ç{††¶˛|¶ÇÇ|†|Ç|†|Ç|¶†¶|yc{Ƕ†ƒ•¶||••†°|¶ü†|¶Å¶† •¶|¶¶–¶¶†¶Ç¶|ß|ÇŶ•¶|ÉǨ†°|¨¶ †¶Ç¶†¶¶ßß≠ǰ†À¶¨Ç¶| ¶¶|É| ÇÇ| †¶|dž¶|džÀßßŶ††|˛¶|¶¶ƒ†¶Ç¶†Ç|¶† †Çw{¶†¶†¶{|{¶ü†|Ç{üô†{Å{†ü•{||˛¶$††¶¶Çdž†|ÇŶö†|ÇŶ†ÇǶ††|Ç|†ü¶¶ßÇÇ|††˛¶˛|˛¶|¶Ç¶|¶˛†¶Ç†|¶{††ßǨņv||¶˛|¶††|¶Ç¶|†|¶†¶Çx{{˛¶†¶Å¶|ƒü¶ÇɆƒü¶|¶• †¶|¶†˝¶ ÇÇ|¶ü¶ÇÇ|†{Ç{¶•¶|ßǶ†˛¶
  1040. †¶|ß¶≠¶ß†ß|˛¶*|¶|¶¶†|¶|†|¶††¶¶|†|¨Ç¶†À¶¶|†|¶|¶†¶†¶|¶|¶Ç††˛¶{¶wV˛¶˛†¶Å†ôü{Ç|†ü•{|{•ü†|Ç|††˛¶|Ç|Ç{•ü¶X††•züü¶Å†|Çdž†˛¶˛|¶•¶¶ß||{˛¶X|¶¶††Ç¶||Ƕ†¶†Ç{¶ÇÇ|††¶˛|¶˛|¶††|Ç|†|Ç|††¶Ç¶üw[{†¶¶ †¶Ç¶üƒü¶†¶Å¶†¶Ç¶†ƒü¶Ç¶† ¶–¶¶|ß¶–ü√{Édž{Å•¶|¶ü¶Çâ¶¶† ¶¨Ç¶† ¶—ß}|¶¶–ÇÇ|¶¶ |Ç|¶|ÇÇÀ†¶Åà|†|˛¶|ß¶¶|¸¶|¶Ç¶|¶¶ †¶Ç≠üüw{¶Å¶†¶˛Ç†{¶††{¶Ç†{•ņôü{Ç|††¶Ç¶|†ü˛¶{üŶ|†{•ÅÇ|†{ÇǶ˛†¶ÇÇ|††¶¶ß˛|˛¶|ÇǶ†¶Çdž¶ÇÇ{††¶ÅÇ|††¶˛|¶˛|˛¶|Ç|¶|Ç|¶††|ÇŶüx†{¶˛†¨¶¶|¶•¶†˛¶    |¶•¶†°†¶Å¶˛†¶Ç¶ü •¶|¶{•{†|üÄÅ|†üü{Ƕ—¶¶†˛¶|ß°ß˝¶|¶¶†|¶Ç†|Ç|††¶ÅÅ{ †¶|¶†¶Ç¶†˛¶|¶¶ †ÇǶ†ÇǨ¶ƒ†ßǶ{¶x7{¶Å¶††¶¶†|{•{††¶{|{••¶††{•{†u†Ç¶†¶{¶{¶|¶{¶{üz•{|uü{ü{¶Ç¶˛†¶ÅÇ|°|˛¶˛|0¶††ÇÇ{†Ç¶|¶†¶{Çdž†¶Ç†|Ç|††¶|†|¶††|Ç|†|Ƕ¶|†•¶{|Åy.†{¶†¶†¶¶ ††Ç¨¶¶ü¶¶ß|¶•¶†À¶¶{¶¶¨¶ †Ç|¶†¶{¶{•{ü††˛{)¶ü¶{¶¶—¶¶† ¶¨Ç¶†ßßÀ†ÇǶ†¶{¶{¶|¶|¶†¶Çdž ¶¶|˛¶|˛¶†ßǶ¶ †¶|¶† ¶ß|¶•¶{Çw{¶{¶†˝¶†|ÇǨ˛ü%¶||{•ü††¶{{ü¶Ç¶††{dž¶{Ç|¶z•{†u{z{{¶Ç{{˛¶˛†¶ÅÇ|°†ß††|¶††Å•{¶Ç¶|¶††|¶Ç††¶˛|¶˛|
  1041. ¶††{ÇŶ††|Dz†¶|¶üü†¶Äy†{¶˛†    ¨¶¶†°Çà• †˛¶"{¶¶ ü¶Ç¶ü¶¶ß|¶ü¶ü¶{•{¶{•{†{|{Åz¶ÇÇ{˛¶† ¶¶Ç¶†ßß≠¶†|¶¶†{•ņ|¶|††¶˛|    ¶††|¶†¶Ç¶†˛¶|¶•–¶†|˛¶
  1042. †¶Ç¶ü•ü†{•y{¶Å¶ö˛¶k††|ÇÅ•ü¶{¶{Ç{¶üüWÅ{ü{Ç{†{¶üü{Ç{¶ü{{|{ü{ÅV{{ÇÅüü¶|†|¶Ç||¶|ß|¶{||¶|†{¶|Ç|¶|††¶|Ç|¶{¶|¶|Ç|¶†¶||{••¶||Ƕü†|Ç{•ü|˛{y.†¶¶†¶†¶¶À†¶Å¨†¶Å•ü¶Ç¶üü{ÅÅ•ü¶Ç¶ü ¶ ü¶{¶• ||{†••˛{EÅŨüƒ†ßǨ¶¶†¶¶≠Ƕ† ¶Ç|ß¶¶|¶Ç†|¶†¶†¶|¶• †¶Ç¶†¶¶¨Ç¶† ¶¶|ß¶≠¶ üÇǶ•¶ÅÇ{{y{¶Ç¶†¶†˛¶{Ç{¶{Å{†{•{üu{ÅÅ{ü{¶{ü†¶ÅÇ{¶ü¶{†˛{•{Ş{•ü•{†|ÇŶ†¶ÇÇ|¶ü˛¶1|†¶¶|†Ç¶†¶Ç¶ü¶Ç¶{¶•¶|Çdž†¶Ç¶|¶¶ß||{–¶¶{ü{¶{üzÅ{{Wxü{¶Ç¶˛† ¶•¶|¶••{||¶§•˛{ÇÅÇ{üü•ņ†¶Å¶ü¶{Ç{†ü{{˛Å{üü•Ŷ†¶Å¶† ¶¨Ç¶† ¶ÇǶ†¶˛|!¶†ƒ|Ç{¶ÅÇ|†¶¶|¶¶ †¶Ç¶† ¶¨¶ß|¶•–¶|{˛¶˛z{{Åy,{¶Ç¶ü†ü¶|¶{†{Åzü{Ç{•zzt{WÅ{üt{]Å{üzÅ{¶ü¶{üü•W˛{z{{•{Å{†˛{¶ü¶Ç¶†¶|É{•ü††¶XÇ|¶†Ç|¶{¶^††¶˛|¶††|Ç|††¶••{†{•ü¶{Å{¶{{zzVzVy5ü{¶†¶••ü¶ÇÇüüÅÅü•ÅÅ{{z{{ÅÅ•üüzÅÅ•û{{Çü¶Ç|{üÅÇ{{zz{ÅÅÇ{˛ü>{•• †¶¶¨¶ß|¶•¶†ßÇ||¶¶†|¶††|dž ¶¶|Ƕ †¶Ç¶†¶¶¨•¶†¶Å•ü•ÅÅ{|{zVÄzzw
  1043. {¶|††¶•üüÇŞ{zûûÅW{˛z{z•z{zÄy§zü{{zü˝{z{{|˛zÅWÅzüzûz{{üü†ü¶ÇÇ|˛¶ ü†|¶|†¶¶|ÇǶ˛|˛¶†||¶˛†
  1044. ¶||{••¶{ü{•˛{
  1045. ÅV{zzszVzzu
  1046. ü{¶|††¶üüŶ˛{üû§ÄÅ{{˛z˛ûzzyùùzV{{ûyzz{z{z{{ÅÄÅ{{zzùûz{{˝ü ¶Ç|¶¶–† †Ç|††¶˛|¶††˛|˛¶|˛¶
  1047. † ¶¶|¶• ¶¶{˛•{ÅzÄzz˛s˛zx{¶|¶†¶•¶uüzÅV{uüzÄz{msHsO˛s#HslsNOIòzzyzt{z{P{{•zzOONrIttüz{tüü¶˛|˛¶††Xdžƒ†ÇXdž¶†Ç{¶†¶˛|¶††|¶ÇÇ|†ü•ÅÅzü{ÅVzssImllHOOy$ü¶¶† ••|°†•ÄÄ{|{ÅÄztsllHOOsllHmHsNmmû˛yz{{˛zÅüüssHNHIsûûü{üü¶¶ß|¶¶¨¶††ßdž†˛¶(|߆¶Å¨††|dž¶¶ †¶Ç¨¶¶† ••ŶüÅWÅssIsIlHsHOwü¶|¶†•{||¶û§z{WÅzsHOHl˛Hl˛Hm˛HrHIlyyzyzVzzÅ{òmr¸Hrlstüzz{˛¶†¶ÇÇ|†¶¶||¶¶†||¶†¶ü¶˛|¶˛†¶Å¶†¶Ç¶üüz{{•WWOsHHIs˛HI$y+ü{¶|†ü•{|{•z{{Ç{zlsOslsmmlxNsmsNrrsHmmzyUÅz˛{mlHsmsHsrrHtüüz•¶¨¶††ÇǶ†¶|Ç|¶¶¨˛|¶˛†¶|†† †¶Å¶†ƒ¶¨Å•{†{•ÅÅPsHlH˛slrlnw{¶Ç¶†••Ş{Å{{zz˛lsNysòmsTOts£xyOmHmsyxV˛z"sIHHrùszssHHIzzü{¶{†v||¶••{||¶†¶ÇÇ|˛¶vÇǶ|††¶ÅÇ|††¶••{|{•zzts˛H˝sùrsJy{Ŷ†À••˛{ÅÅà{ûsslssûz§ûüzÄyzz§££yyOsIsyIJzK§ssHssùù§zzssHsz•ü•Ŷ††|ß¶–Å||¶¶ †¶Ç¶†¶†¶|¶Ç¶†¶†ßǶ† ¶¶Å¶|¶••ssHmHssysûû§zzw{¶˛†¶•Åu{WÅÅ•slHOHót{˛z§zzyzyÄyyssHNH¸zyslmOyyzzÄysllHz˛{•ü†|Ç|¶•¶{|•¶††˛Ç!¶†¶†¶|ÇǶ†°°¶Ç¶üü{Ç{†{ÅzóHOHmszyyt˛zUy"{{¶†¶ü•{†{{WÅzùlmOyóü{{z§§•zzyÄzzsó˛N ssûzÄyyllsyy˛z(yùrllóz{{¶• ü¶Ç¶†À¶¶{¶†¶† ¶É|††¶†¶|¶¶ß°°†˛¶ü¶Ç¶{•{ûssNrmûzÄyzt{UUw{††¶˛{$¶{{z{VzrmHsszz{WÅzûzÅVzyÄUsllHOsùy§zz˛Hsy˛zyùrrHsszV{{¶üü{ÇǶ††{¶|Ç|•ü¶|}|˛¶††{˛¶††|ÇÅ•ü†{Å{üssNNHst¸zVVOyD{††••{|ǨÅ{züysHssûzÅ{Å{üûÅÄÅzÄ•zsHsOyy£ztsHNrûzÅz§ùsHsszzü{¶¶ ü¶Ç¨˛† À¶†|¶¶††ßß¶|˛¶ ††¶¨¶ †°Ç¨•¶ü¶Å¶{ûrNHsszzüzÅzÅVVy{††¶•Å{˛Åzûûù˛HzzüzÅV{˛z6ÄzzUzûûNHHssyyÄztsNHsóûzÄyyHIIyyzzü{¶††Å¶{†v|¶¶††¶¶{†¶¶˛†¶¶††ÇǶ˛†¶••˛{    •{{srHIIys˛zVzVzVx{{ ••{ÅÅ•{•zûmmHyz•ü{V˛{4z§ÄÅV{ûûsUHmryzzüssNxsûzÄÄrsHsy§z{{¶•¶{¶•¶{¶Ç¶† †¶|˝¶ †¶†¶†¶ÇÇü † ¶ ü¶{Å{•zsHsIss˛ÄV{zzV]y{üü•˛{(•Å{{zsmHNNûû{W{zzVÅzûV]zûssOOHrxÄzûtsHHry˛zyxs˛H
  1048. ùyÅW{{•{{|¶˛{,¶††¶¶||Ƕ•††¶ü††¶ÇÇ{üü¶••ü†{ÅW{zùHIHsmtzÄVztz˛VwM|{üÄ•{ÅŶ{{tûsrHsz•{¶{{zÅÅ•zÇ{•ûzOslsxÅzûrrlszÅzzyùssHsù§ÅÅ{ü{•Ŷ|¶•¶†ß†¶†ß†¸¶† †ß†˛¶ü˛¶•¶|ÇÅ•ûûssHrrûzÅÄÅVzzÅVzx{{z§§•{˛ÅuòsNHmmzz•{{PzzŞ{-üûûUUHllyÄzzsrlmmzÄÄyyrrHImùyÅVzP{{•{|{•ü†|Ç|˛¶†ü•¶{†ü¶˛†••¶|{z•{{WÅzûtt˛Hs˝zVVPzVztx{{Å{•z{{•{üzyNOmòz•Å•{Å{•{†˛{•ùyNmIyy§zzyyrrHtzÄħùùNrItz§˛z-{{•ü¶{¶ü •Ç|¶¶ †ƒü•Ŷ{†•–ü†{¨¶¶{{z•ÅÇ{•zòmONss˝zVVzz{Vûy$yz{ÅV{{ût{zzNHHttûzÅW{{Å{üu{VÅzûrlHOO˛ûDyyNNHlszVÄzùlNHmsÄÄzszVÅzüzÅ{†ü•{|Ƕ¶†ü•Å•{†|••ü{ÇÇ•z{tzzÅÅ{zzmmHNNss˛zVzPtVzzxkÄz{VÅ{üûûzzsslssü{ÅŶüÅÅ•ü•ÅÅ{•ósHsOzzüû£rsHssyzÅÄzrórsmûyÄzÅÄ•züzÅ{•ü•{††¨¶¶üüŨ•ü{¶Å•û•ÅÇz•z{z•ÄÅzüòsHsmss˝zÅz{VÅzÅo¸züz{zyss˛lz˛{ Å{üz{{•{Å{üzy˛H yz{zûùsHImss˛ÄsslsmssyyzzÄzû˛z{ûûz{{•Å•{üu¶†¶{˛•z§§•˜ztòlNHmmyVÅVzz{WWzzVx
  1049. zz•zûû§zÄùó˛lòzÅ{¶••˛{˛•N{üü•sOHsùûzÄyùrrHmszħzûssHsszz§ù§z§yûz•zûûüz{z¶••z{|¶{¶••{{ù§zÅzûùût{zzsòsólsI˛z
  1050. VÅzzV]WzVÅyHssûsyTysólH$mtÅ{{z•{{Q{{•˛{üzz˛HòsùssIrlsItzÄz§ûó˛H3yUzsùszOysûszsûszzûòüyÄ{†u¶Å•tzsùryOzsùstPzssHsllHUV˛zV˛zWWPzVy;slsmtsxNsmmHOt|{•û•Ŷ†¶{•ü¶{•ûütsHmmyrsImlrsÅz{zÅħóóHOOysrH˛s8HsmsNyssOûûüzÄÄ•{¶••ztsyrslsIsrrHsmsNsmmHszÅVÅzÅVztWW{zzx˛HIIs˛HmHsO˛{)zûzÅ{¶{Å{üü¶{{zûOIHmHNHlHmHzÅÅz{{ÅyùmmHOHl˛Hs˛Hm˛HN$Isû˛zûz•{•zsHs˛HlHIHr˛HmHNHmHOOÅVzVzVzPuP˛{VyHHlHmHrHlHttüz˛Å{üü¶Å¶†•ü †|züû{tt˛H'llsOÅ{Åzüü•zÄzzssrrHmHlHsImHllmHOHss§Äzz˛•ztHlHO˛HmIONrH˛mHsmûzzVÅzÄVÄzuP{z{W{yhHIHslsNslOVü{zVÅW{{üzÅ{¶ü•ü†{{zü{{ssHllószWÅtzz•z{tzz{ssHsmsHNrsNNHsIOHNHsy§zzV•ztHllsOOHllsIsHrHsmsHsyzV˛z VVz{QQPûz{Wy7ttzyùyzsûzÅ{†{Å\á•…üü{¶¶—¶††¶••ü üzstsûû•ÅÅzüû•{¶{üû•{{z˛ûzzyûù§ÄyyûssHssùù§zÅzûIIlóyzV˛ûzzttszzûòzVzz•z{{ÅVzz|Wttü{{w
  1051. tzzûyzz§§•W˝{ÅÅ•ûü{†{˛¶†¶ü•ü†üüz{tüz•ÅÇ{zz••˝{ü{üz{z•˛züy§ÄÄUùûû˛Hyryz•zzIIHsóûzÅz•zûzztzyÄzüPVP˛zV{PzVzV{tuQ{zxzz•z{{•§§{|{ÅÅ•ü•Å•ü˛¶†¶¶≠¶•ü¶¶†{ü{ü{ÅÅ•˝{••˛{¶||ü˛•>{{züü•ÄÄzzy§ssHssyyÄÄ•tIHssòò•ÅÅ{•ûûz{VÄzÅzzt{zÅzzVuu{VÄz{QuPzw˛zŞ{•zŞ{ÅÅü˛{¶ü¶˛†˛¶Tü††¶üü{üü•{ÅÄ•{|{•ü•{•ü†u†ü•{{u{züzÅVzyÄysHlNyyÄV§ûsHHrztûû•]{{üzzV{VzVzPuVÅzzVzPuPzz˛{P{tyYzzÅŨ•ü{ÅÅ•ü¶Å¶ü†|ß¶–•¶†ß¶¨¶¶†¶¶≠¶üü ¶•{Å{ü|¶ü•Ũ††ü ¶¨Å•ü†|•§•{{zÄÄzmmlxxzz•ûûslHsyüü•ÅÅ{˛•VW{ü˛z{W{zü{{zÅWutü{{VÅ{u
  1052. d°dONLNdU\(‹(EzMark Jenkins of Rucker Huggins°dONLNdu+\4Ó* &created this beautiful image depicting°dONLNdú7\@˛* &asynchronous routines by synchronizing°dONLNd√C\L„* !four graphics applications: Adobe°dONLNdÂO\X* 'Photoshop, Adobe Illustrator, Ray Dream°dONLNd[\dÔ* %Designer, and Fractal Design Painter.°dONLNd3y\ÇÔ*%develop, The Apple Technical Journal,°dONLNdXyÔǡ)ì is a°dONLNd^Ö\é(´z)quarterly publication of Apple Computer’s°dONLNdàë\öı* %Developer Support Information  group.°dONLNdƨ\µm*The °dONLNd≤¨mµ¿)Developer CD Series °dONLNdΔ¨¿µ˚)Sdisc for March°dONLNd’∏\¡˘(fiz)1993 or later contains this issue and all°dONLNdˇƒ\Õï* back issues of °dONLNdƒïÕ≥)9develop°dONLNdƒ≥ÕÓ) along with the°dONLNd%–\Ÿ‰(ˆz$code that the articles describe. The°dONLNdJ‹\Âz* develop°dONLNdQ‹z€) issues and code are also°dONLNdkË\Ò€(zavailable on AppleLink and via°dONLNdäÙ\˝⁄* anonymous ftp on ftp.apple.com. s9s/ˇ"¢◊#ˇ ˇˇˇˇ#◊ 
  1053. d,     Helvetica.°dONLNd&)+<AE°dONLNd,&8)D°dONLNd;&?)I°dONLNdB&J)T°dONLNdM&Z) O°dONLNd]&i)R°dONLNdl&p)I°dONLNds&~)A°dONLNdÅ&ä)L, Palatino
  1054. °dONLNd
  1055. ü%)Documentation matters.       °dONLNd#%)r2°dONLNd&21B:(]OL°dONLNd'2=BH) E°dONLNd(2KBS)T°dONLNd)2VB^) T°dONLNd*2aBl) E°dONLNd+2oB{)R°dONLNd,2~Bä)S
  1056. °dONLNd.5üAI)!#Apple DocViewer queries. What’s on °dONLNdQ5IA])™your°dONLNdU5]AÅ)     mind?       °dONLNd^6ÅAá)$4°dONLNdaN&^1(yDA°dONLNdbN4^@)R°dONLNdcNC^K)T°dONLNddNN^R) I°dONLNdeNU^a)C°dONLNdfNd^m)L°dONLNdgNp^{) E°dONLNdhN~^ä)S
  1057. °dONLNdjQü]Ì)! Asynchronous°dONLNdvQÌ])N °dONLNdwQÔ] )Routines°dONLNdQ ]#)1 °dONLNdÄQ"]0)on°dONLNdÇQ0]3) °dONLNdÉQ2]D)the°dONLNdÜQD]G) °dONLNdáQF]})    Macintosh, New York°dONLNdêP}\Ä)7 °dONLNdëP\Ç)     °dONLNdíRÅ]ç)by°dONLNdîRç]ê)  °dONLNdïRè]†)Jim°dONLNdòR†]£) °dONLNdôR¢]¬)Luther
  1058. °dONLNdüP¬\≈)  °dONLNd†P≈\») °dONLNd°P«\ ) °dONLNd¢Q…]) How to avoid°dONLNdØ^üjy(ÜΩ3the pitfalls of calling routines asynchronously.       °dONLNd‚_yj)⁄5
  1059. °dONLNdÊwüÉ¿(üΩInside°dONLNdÏw¿É√)! °dONLNdÌw¬É˚)    QuickTime°dONLNdˆw˚ɲ)9 °dONLNd˜w˝É)and°dONLNd˙wÉ) °dONLNd˚wÉx)Component-Based°dONLNd
  1060. wxÉ{)e °dONLNd wzɱ)    Managers °dONLNdw±É≥)7 °dONLNdw≤É¥)     °dONLNdx≥Éø)by°dONLNdxøÉ¬)  °dONLNdx¡É—)Bill°dONLNdx—É‘) °dONLNdx”É)Guschwan
  1061. °dONLNd)ÑüêÔ(¨ΩGUseful debugging and tracing techniques for QuickTime and the Component°dONLNdqëüù–* Manager.       °dONLNd|í–ù‹)134
  1062. °dONLNdÅ™ü∂÷(“Ω    Macintosh°dONLNdä™÷∂Ÿ)7 °dONLNdã™ÿ∂0)Debugging: The°dONLNdô™0∂3)X °dONLNdö™2∂M)Belly°dONLNdü™M∂P) °dONLNd†™O∂Z)of°dONLNd¢™Z∂])  °dONLNd£™\∂n)the°dONLNd¶™n∂q) °dONLNdß™p∂è)Beast°dONLNd¨™è∂í) °dONLNd≠™ë∂ƒ)    Revisited°dONLNd∂™ƒ∂«)3 °dONLNd∑™Δ∂…)     °dONLNd∏´»∂Ì)by Fred°dONLNd¿∏ü√Δ(flΩHuxham°dONLNdΔ∏Δ√…)' °dONLNd«∏»√⁄)and°dONLNd ∏⁄√›) °dONLNdÀ∏‹√Ù)Greg°dONLNdœ∏Ù√˜) °dONLNd–∏ˆ√ )    Marriott °dONLNdŸ∏ √$)*  
  1063. °dONLNd€∑$√)0A supplement to the Belly of the Beast debugging°dONLNd ƒü–d(ÏΩ0article in Issue 8: four new tools explained.       °dONLNd<≈d–p)≈54
  1064. °dONLNdA›üÈfi(Ω
  1065. Adventures°dONLNdK›fiÈ·)? °dONLNdL›‡ÈÍ)in°dONLNdN›ÍÈÌ)
  1066.  °dONLNdO›ÏÈ    )Color°dONLNdT›    È ) °dONLNdU› È<)
  1067. Printing      °dONLNd_fi<Èd)1by Dave°dONLNdffidÈg)( °dONLNdgfifÈâ)Hersey
  1068. °dONLNdm›âÈè)#   °dONLNdp›èÈÚ)A general strategy for°dONLNdáÍüˆ´(Ω=printing color images that ensures the best possible quality.    °dONLNdƒÎ´ˆ¿(…   64
  1069. °dONLNdÃü‡(+Ω
  1070. DeviceLoop°dONLNd÷‡„)A °dONLNd◊‚)Meets°dONLNd‹)! °dONLNd›)the°dONLNd‡) °dONLNd·I)    Interface°dONLNdÍIL)0 °dONLNdÎKÇ)
  1071. Designer      °dONLNdıÇ©)7by John°dONLNd¸©¨)' °dONLNd˝´œ)Powers
  1072. °dONLNdœ’)$   °dONLNd’) This little°dONLNd    )0-°dONLNdü˚(8ΩKknown System 7 routine can help you deal with multiple screen environments.    °dONLNd]˚(8   °dONLNd`)97°dONLNdd)'93(TEC°dONLNde)69C)O°dONLNdf)F9O)L°dONLNdg)R9]) U°dONLNdh)`9m)M°dONLNdi)p9{)N°dONLNdj)~9ä)S
  1073. °dONLNdl,ü8fl)!    Somewhere°dONLNdu,fl8‚)@ °dONLNdv,·8Î)in°dONLNdx,Î8Ó)
  1074.  °dONLNdy,Ì8B)QuickTime: Top°dONLNdá,B8E)U °dONLNdà,D8R)10°dONLNdä,R8U) °dONLNdã,T8ç)    QuickTime°dONLNdî,ç8ê)9 °dONLNdï,è8¨)Tips      °dONLNdõ-¨8”)by John°dONLNd¢-”8÷)' °dONLNd£-’8)Wang°dONLNdß-8Ú) 
  1075. °dONLNd®,Ú8ˆ)  °dONLNd™,ˆ8)The°dONLNdÆ9üEÚ(aΩMfirst installment of a new column on QuickTime: hot tips from the masters.       °dONLNd˚:ÚE˛(a31
  1076. °dONLNdRü^π(zΩPrint°dONLNdRπ^º) °dONLNdRª^
  1077. )Hints: Looking°dONLNdR
  1078. ^)O °dONLNdR ^ë)Ahead to QuickDraw GX      °dONLNd,Së^‚)Öby Pete (“Luke”)°dONLNd=`ük—(áΩ    Alexander
  1079. °dONLNdF_—k◊)2   °dONLNdI_◊k)ASome things you should be aware of involving QuickDraw GX and its°dONLNdãlüxı(îΩeffect on printing.       °dONLNd°mıx)V52
  1080. °dONLNd¶Öüë¥(≠ΩThe°dONLNd©Ö¥ë∑) °dONLNd™Ö∂ë~)#Veteran Neophyte: Tower of Babble      °dONLNdÕÜ~ë”)»by Dave Johnson
  1081. °dONLNdflíüûfl(∫ΩHProgramming languages are just like natural languages, only different.      °dONLNd'ìflûÎ(∫˝61
  1082. °dONLNd,´ü∑—(”Ω    Graphical°dONLNd5´—∑‘)2 °dONLNd6´”∑ç)!Truffles: The Palette Manager Way    °dONLNdW¨ç∑ê)∫ 
  1083. °dONLNdX´ê∑ì)     °dONLNdY¨ì∑)by Edgar Lee and Forrest°dONLNdrπüƒ√(‡ΩTanaka
  1084. °dONLNdx∏√ƒ…)$   °dONLNd{∏…ƒ·)>The Palette Manager need not be a mystery. Here’s the scoop.      °dONLNdππ·ƒÌ(‡ˇ91
  1085. °dONLNdæ—ü›Ñ(˘Ω'KON & BAL’s Puzzle Page: Booting Blues     °dONLNd“ћ) by Konstantin Othmer and°dONLNdˇflüÍ◊(Ω
  1086. Bruce Leak
  1087. °dONLNd    fi◊͇)8   °dONLNd fi‡Í)    DYet another elusive crasher bug that you’ll never guess in a million°dONLNdQÎü˜¡(Ω    years.       °dONLNdZÏ¡˜”)"118°dONLNd_S`(/qQ°dONLNd`cg) °dONLNdaju)&°dONLNdbx|) °dONLNdcä)A
  1088. °dONLNdeü) Macintosh Q & A   °dONLNdw˝)b5Apple’s Developer Support Center answers your product°dONLNd≠ü (<Ωdevelopment questions.       °dONLNdΔ  )o104°dONLNdÀ-M=Q(XkI°dONLNdÃ-T=_)N°dONLNdÕ-b=n)D°dONLNdŒ-q=|)E°dONLNdœ-=ä)X    °dONLNd—1ü<±) 122 w4w (z +
  1089. 1(çª0© 1993 Apple Computer, Inc. All rights reserved.*%Apple, the Apple logo, APDA, Apple II){GS)
  1090. =, AppleLink, AppleShare, AppleTalk, ImageWriter, LaserWriter,(®ªdMacApp, Macintosh, MPW, MultiFinder, ProDOS, SANE, and StyleWriter are trademarks of Apple Computer,*    lInc., registered in the U.S. and other countries. AppleGlot, ColorSync, develop, DocViewer, the dogcow logo,*    dFinder, Moof, MoviePlayer, PhotoGrade, PowerBook, QuickDraw, QuickTime, Sound Manager, System 7, and*    dTrueType are trademarks of Apple Computer, Inc. PostScript and Adobe are trademarks of Adobe Systems*    eIncorporated, which may be registered in certain jurisdictions. HyperCard and MacWrite are registered*    mtrademarks of Claris Coporation. NuBus is a trademark of Texas Instruments. UNIX is a registered trademark of*    [UNIX System Laboratories. All other trademarks are the property of their respective owners.(ÚÊ
  1091. CONTENTS  )*
  1092. March 1993ˇ1t◊#ˇ ˇˇˇˇ#◊ 
  1093. d,     Helvetica.°dONLNd%95ç+WP    EDITORIAL0û10´
  1094. ü2/™òÄ<êxHHg,qˇˇˇˇˇˇÓÓÓÓÓÓ››››››ÃÃÃÃÃꪪªªª™™™™™™ôôôôôôààààààwwwwww    ffffff
  1095. UUUUUU DDDDDD 333333""""""êxü2/™#3˘2"˛2"2"2"2¯"˛2""˙!"˛!"Ù!"".˙#"#˜"˛""˛"#˛"˛˝
  1096. "˛"ı2"2˝"!˜"2˝"!!¸!""¯!!!"!" ˚#"#¯"""¸˚"˛¸¸˘˛"(˛3˜2"2˛"2˚"!""2"2˛"˘!"!"!"˛!"˚!""$3˘#"#˘"˛"¯"˛˘˛˝#332323˚2˛"2""2Ú"¯!"˝!¸!"˛!",33##"˛#""#¯"˝"""˛"˝˛˝˙˛)C3C33˛2323˘2!˚"˛2"2""!""˘!""¯!"!"")34˛3˝#"#ı"˝"#˝"˛˘˛'CDCC33˙2"˝2˙"2"˛2"2!"ı!!˝!¸!"'34˝3˝#¯"#¸"˛#˛"˛˛˘˛"'CCD˛C˛3˝2"˛2"˚2
  1097. 323DC32"2""¯!"Ù!"",3˝433#3˛#""#"#"˛# 33#VfgfeC3""Ò˝˛%CDCD˛C3˜23DTUDEàwàôñT322˛"Ô!˝!".3¸4˛3˛#""˝#4WxààââäôöôáT3""¸˝¸˚"-DDCCD˝C33¸2
  1098. 3Dgàôô™ª∫´ª˛™ñS3˝"˙!"˛!"˜!"0˙4˝3##"##4Vxxâõºº™´ºº´ºπu3˛"¸˛˛˝)˘C˙3Dgàòöº™ªÀ´Õ›‹Ì€∫©t2˝"˜!""˛!!!!"-34˜3#33Fòôâ≠Ωª∫õÃªΩ›fiÀ™áàC""ˆ˛3˛C3C3C3C3C˛3Uz©àö€›ªπº‹ª´›Ì‹€©àc32"!"˚!˝"!"˙!""-˙3##˛34Ew™àâ´ª⁄Ã∫Ω‹´´ÕΩ‹Õ€ò¶3""˝˜¸4CC˛3C˚34Uxπ™ª∫ÀÃ̪̀ªÀ‹‹€ÃÌò∫tC""˙!"!˝"˛!˛!"93433#˛3!#33#3gä´ÀÀ™ªΩ›´º™æÕ‹À´¨fiòº∫c""¸"˝˝1˛C3C˙3Dwª‹›€∫™ÕÌ…™öÕ›ª∫òõfiªÀ‹ï2""˛!"!˙"!"˚!"344¸3#3#34FäæÕfiÃ∫´º›ô´≠Ω› wVfúº›Ω C"˘˝"˛,˛C˘3DV´‹ÌÌÀ Ãº›∏ôºÃ€∑uUf{ª›€ c2¸!¯"˛!˛!"834˝3#3##3FW™ú›Õê ¨Ωπö˛™    vD4Eh¨›ÕÃÑ˛"˝"""˛˛˛"3¸C$33C33DehòΩÌ›‹À… ¨…óxòádCDTf¨‹‹Ã•B2"!!¸"2¸"¸!""24˘3#5UX䨛պ©{∫€ªwVUD334EF¨ÃÕîS"¸"¸"˝3˘C33Dey∫ºÌ€™á´º€ªáTTCC3DDVãËÅt2"¸!""2"2""˝!˛"533#334˛34EV™ÀΩ›À™™öΩÃÕªuD#334DFh¨Ã›ÀñB"¸˚"˛˝"533˚C34UWª‹ΩÌ€™©´Ã€›ÏΔD˛3 CDUg´‹Ì⁄∏b""˛!""¸2""˛!˝"5¸34434DgzõÕÆ‹Ãö´´∫ߌΪT˛3 4DEV{ΩÃÙÜ""˛˝"#"#""˚":˛3C3˛C"DDWô´ºÕ⁄À∫ª∫∫ÜÕÎÀTCC3DDTVx›ÏÃ∫Ü2""!˝"2"22˛"!˝"2/¸3#433EDHòöΩΩª™º´¨©gΩÀ∫T3#34DDEWÕ€ª´ñ2"˝˙"˙",˛3˝C DETh©™Õ›π©∫»àááÕŸ∏SC33CDDUf≠π™ª∑2¸"˚2¯"63#˛3˛4UDXäõÃŒòyáúò䙺xï˛3 434DFyù®®å∑2"˛˝"#˚"˛""3˛3˛CDDeUx´´‹ÕπwwâÕÀ …wÑC˛3 CDDh®õ ®ã®c2˚"2"˛2˙"23*33443445EWy™¨Õº™vgfVxöòyT##344DG©Ujºâö¶e"Ù"""433CC˝D%Vwô∫ªÃÃπÜwueä™´®S33CDDTiñVy‹ô∫…cB2"!2"¯2˝"2933˝4DEXöªºÀ´Õ∫wgxwx¨ª¶43˛4DGáàx®≠Àª´•D""˝"#"#"#¸"";C3˛C$DDUWÕ‹ π´›»wá®Üôº ÖDCTDCDWö¨y∏}‹‹…ôv2˛"2"¸23˛2"2""/˛3˛4#DEWÕÃÀ™º≠‹wáâ{㨮eVxáeC3IÜgfVY›‹∫™Ö2¯"˛#˚"933CDCDDUgÕ› ™™›Ì∑Üòöª€ßܲwuC3WuUeUVÌ‹∫ ÖB2"2"2"˝2˛3˝2"333˝4#DEXΩ›∫©â¨‹´wàä¨∫weEháeD#6ffT4FÕ ´ºTC˚"#"˚#˝":˛C(DCDDTgºÓ‹ôÜõ π∑áàª∏ñTFóátC3EeDC3EúÕÕÏÑB22˛"2"22¸32""2533˛4$DEWiúfi›ªââäâªßázòuF´ÑVD344U334E|ÃΩÕdB˙"˝#3#3˝"7CDC˛D#UhäúÓÌ‹«òàöÀ∏∑òáukáefdCTDUTCDEl››‹uB˛2"2"22˙3˛24¸4%DEg´ºÕ›À™ªàä´∫´äßUeDDe34ED6UD4ElÕÕÃe33¸"˝#˛3##˛":CDC˛D$Tx´À›⁄ºÀàöºπô ππeTEeS3DUSEfeTU|›‹€ÜTT˛2"˝233CC3˝23¸4DEi¨ÃÃÀ´¨∏yôáãàö®S¸34ED4VvUV|Õ›ÀvUD˚"˛#3443#˛"<DCC˛D%föª›‹€ ªÃxö™ªv∫∑S2233CDUdCVxvgõÕ›‹óuDC˛2"2"33˝C322":D˛4DEHàã€fi›…™™âäöòjówC˛#34UVT3FgxxãÃÕ€∑eD4#¸"##˛433˛"8¸D&UgvãÛÓÙ´…àâ©ÍváTD233VfUeTVáxàz‹ ÀÀñUd˝2""33CDCC3˛29¸D(EVwzºΩfiº´´ªòöº©áóUD334WVVfUWwxWkÕºª™àfD3#˝"    #33443##"";TD˝T-VwâÕÛº‹ÀÀ∫©™©´«eTDDEuUwàáààóglÃÃÀπÜdCC22"2233˛DCC˛2:˛D,4DDEWyÕ€ÕÀ‹⁄ªπz´™¨∑fUUDFTEEhã™ΩfV]›Õª∫áD33##"˝#44D43˛#:-TDDTDTUfz››Ã ›º‹Ãª›Ï∫®fveUwdTTUwπ∫uv≠‹ÀàÖTCC3˝2˛3DDCC˛2:¸D%EUgj››Õ ÕÃÕÀºÕ ¨®fwffwUEVfxwjeVfi‹´ºπvD˛3##"˛#344˛3""<TDTDTUgá|Ã̛̺››‹ÃÃπ›∏e˛wvâóuTD4YvfÌκÀ∫ÖTCC33˛233CDDCC˛2:˝D)Ewwy¨º›fifiÕ›ÃÃÀº º»eUfWlµeC3#$ôf{›ªΩº…uDD33˛#"##3˛43˛#=T˛D7Thô∫ÃÛ›fiÌfiÌ››Ã€À»uUeUeßuCC2Gàvé‹ÀºÃ™ÖTDC332"2233CCDC3228˛D*4DVõ™¨Õ‹ÕŒÓÓfiÕŒ›Ã›ÀeDEDDFfVEgwófé›ÃúªuD433˙#34433##<TDTDUg䪪ÀÛ›fiÓÌÌ›Óϛ̶e˝TgvUfxwvΩ›‹€ÀÀÜTDCC3232˛3CDCC3328˝DEWz™ººÕÕΩ›flÕ›Õfi›ΩÓπe˝DF˛gffW՛úΩÀáUDD33¸#33˛43##;#TTDTEV©πªÃ›› ª‹Ì ö‹›ÌÓÎódUDTUTTUeffÌ˛‹À€ßdTCC33˛2323˛C˛39˝D-EWwö≠›ÕÀÃÕ∫¨ò´∫º€Ó›©fEDEEDDEEVY›ÀºÃÕÀ∑TD443##"˛#344˝38¸TVóöõÕ›Œ›‹Ãπö´´ÃÃ˛Ì€áTd˝TDTVjÌÓÌÓÏÃ∏eTTC˛32˝3D˛C335˛D+EEVwôõÃÕ››ŒÕ ´ÕºÃÆÓÃÃπvFDEDD4EVlfi‹ÕÓ›ª∫eDD33˙#˛4˛33¸TVà∫¨‹˛Ì‹‹›˝‹ΩÓ€ªÀóeeTTDDegΩÌÕ›ÌÏÃÀuTDC˝3232˙C:E˛D EVy™´ΩÕfifiÛ›Õ˛›Ωfl∫ö´πfVEEDEfYfifiÃfi›ÕÃ…fDD˛3¸#344˛34:˛T+DUW©ÀÀ̛ӛÛ›‹ÌÏÌ‹fl…áàôπ®àvvw™ÃÔÓÓÌ›‹ÀŸeTTDC¸3CCDD˛CD8˝D*EXõ¨››Œ›ŒÃÕfiÃÕ›Õ‹›…gxxôöôôâö¨ΩÓfl›Õ›∫Ã∏fDE44˝3#¸4344;TU˛T
  1099. gºÃÕ›ÌÌ››ΩÌ˛›€∫›ÿvfwáâö™™∫ªº˛ˇÓÌ‹ÀÀ…uTTDCC¸3CDD˛CD:"EEDDEYÕú‹Õ›‹fi››ÕÕº¨ªºπvUfggxââö´ºÔ˛Ó ÕÃ∫xeDD˝3#33¸434<U˛TUiÕÌÃÎΩÓ›Ì˛ÌÌ‹‹ÀºÃŸÜUUv˛wàôªº˛˛ÓÏ΋̟ÜeTDTC˝3CC˛DCCD8U˝E0YÆ›Ω€ΩŒÓ›ÓfiÓÕ›ÃÕàvUDffggwy´¨ÔÓÓ›Õfi›«fUEDD4433#33˚4<1TUTUTf∫ÓÀÓÃÓÌÓÓ˛fiÓÌÓÌ‹ÀÜTTDVefgàö¨˛ÓÏ€‹ÓÓÌ‹∑eTDD3C˛3CCDC˛D6U˝EWzÕÃæŒŒfififlÓ›fififlfi›Õ∑U˛DEVfgäúŒ›fi‹ºÓfiÓ›ÃÀeDD¸3˚4D8˛U#TUf´›ÏŒ››ÓÓÔÏ›ÓÌÓ˛›Ì«eDTTUUfwô´ÓÌÓ‹Ã˛Ó Ì‹Ã∏eTDCC3CC˚D<U˛EUV䌛ŒŒfi˛›! Õ››fifi›fiÿUEDDEEVgâõÕÓÓ‹ÃÕfifi›Ãê∫TD˝4344DDED;UUTUUfäÌ‹Ófi̛̛‹˛›ÏÓÌÌÿeTDDTUUgâ´Ã˛Ì›‹fiÌÌ›˛ÀtD˝CDC˝DT<UUEEUW|›fiŒfiŒÔ˛fifi›fiÕŒÔÔ› d˛DEUVgàõ´ŒÓÌ›ÀÕŒ›Ãººª≈DD˛4˛DEDDE8˛UTUVå›Ì›Ó›ˇˇ˛Ó››ÌÌÓ˛ÓÈd˛DUUfáw™öΩÌ˝ÓÏÓÓÌ‹˛Ã…TT˝D˝TˇU6UEUEUW´ÕŒ˛Ó flÌÓÓÕfiÓfi›fi›óUD4DEUWfgôâòŒÓÓfifiÓ›ÃÃ˛º∂¸D˚E:˝UTgõÕÓ˛Ì˝Ó"Ì›˛Ớ̀ÖTDCDDUefg®àà¨ÓÓÌÓÓ›‹ÃÃÀÃ∫e˛TUTUUTUU8EU˛EgõÕfiflÓÓfi›fiÕfiÔ›‹Õ∫vUD˝4EEUWàxwxãŒfi››ÃÃ˛ºê∑˙EUEE6¸UföÕfiÓ˛˛Ó›Ï‹ÌÓ›ÀÀÜeT˝DTTUUgàávww≠Ì››‹À˛Ã˛Àu˝Uee˛U/¸U!FiºÕŒÓ›fi›fifiΩºª©®UD44344EDEEgxgVVgΩ˛Õ˙ºöE˘U6Ue˛UVw©∫ÌÓÌ›ÌÓ˛Ì›‹‹®eDCC˛DUTTUfàuef{ËËÀ˛ÃÀ‹ÃÃΔ¯e9˝UEEVxãfi›ÓÕflfifiÓÓÌfi€eD3˛4D˛EVewfUf˝Ãª˝ºªººÕßf˛VUVUUV5eUe˝Ufy›Ó˛˛Ó˛ÌÓÓ˛ÓÓ«d˛CDDTTUUewfVãˋê˙ÃÕÀ˚feff6EEUEU˛EV}Ófi›Õ›Õ‹ÕflÔ˛ÕÃπv˛DEEUVVggú˛ºÃúº˛ÃººÃÕº¯f:eeUeUUTUU{‹›ÃˋË›ÓÌ‹‹ÃÀπuU˛efvöª˛Ã‹ÃÀÃÀÀËÀÃÀ‹ÃÜ˚vff8UV˝U˛EiÕÃÃ˛ºÃ˛º ÕÕÃúúÕúºÕÃ˝ºÃ…‹¸º
  1100. ÃÃΩÃÃΩ«ggwg˛fg<ef˛eUeUUl‹‹˛Ã
  1101. ÀÃÃÀÀË‹Ã‹Ã˛‹Ë˝ÃÀÃÀ‹ÀÃÀÀÃËÃÕ‹€› wwá˛wvw2fVUVVUUEUlÕÕúê˚º˛ÃÕÃÃÕÃúÕÃ˛ºÃ긺ÕºΩ‹‹ÕÃá˙w5ff¸eUUÕ›‹À˛Ã˙ÀËË‹ÃËË‹ÀÃÃÀªÀÀ˛Ã‹ÃÃÕ‹€Ã‹∑˝áwwá7f˛V˝UV˛ÕúÕúºªºªº´ºªÃÃÕÕ˙úªººª˛º
  1102. ÃΩÃÕÕÃÕª∫xw˛xwx2˛f˝e UfÕ››€ÀÃÎÀÀÃøÀÃ˛‹›‹›˛‹˙À
  1103. ÃÀËÃÕfiÀ›ÃÀ˝àáàá4fVfVfVVUV›ÕՋúÕÃ˛ºÃ˘ºÃ˝º    ªºªºªººÀú˛ÃºÕºÃººôâ¸à8efefeffef›‹ÀÕ‹ÀÃÏ€À‹˚ÀÃÀÃÃÀÃ˝ÀÃÀÃ˝À‹‹ÀÃÏÃÀÃÃ…òôòôòò2˛Vf˝V    YՋúΩêΩÃ˛ºúÃ˚ºúªªºÃ˝º˛ª
  1104. ººÕÃ˺ºÕÀΩ˚ô5v¸feek››˛Ã›ÀÃÌÀ˛Ã‹À˙ËÃÀÀ˝ÃÀ˝Ã›‹€ÃÏÃˋé©™©©ô5fV¸fVl›ÕÃ˛ºÃºÕúÃúª¸ºÕÃ˝ºªÃ˚ºÃÕ›ÃËΩúÃÃ∫ö™™öö3˘fl˛‹˛À
  1105. Õ€‹ÏºÃ‹ÀÀÃÀ¸ÃÀÃÃÀÀ«‹ÃÀÀÃÀÃÛÃË‹ÀÃË ∫∫˛™6˙f Vm›ÃúºªºÃºÕ˛Ãºªª˛º˛ÃººÃ˛ºÃºÃ˝ºª›Ã˲ºÃú´´™ö´/v¸fvv|››€‹˛ÀˋϯÃÀ‹˘Ã˛ÀÃÃ˛‹ËËËÃÕ˛ª∫∫7˙fg}Õ›ÃêªÃºÃÕÕººÃººÃ˛ºúºÃºÃ˛ºúºÃ˛ºÕ‹˝ÃºÃºΩÀª´ª´0˛fvf˛v}››‹¸ÀÕ‹›ÃÀÀÀ‹ÃÃÀÃÀ˙Ã˚ÀÃՋË˲ÃÕÀ˝ª6¸fgff}Õ›Õê˛ºÃÃÕ€Ã˛º˛Ã¸ºÃ˛ºÀºÃººª˛º‹˛ÃºÃººÕÃ˛ª´8˝v wvvwç›ÌÛ‹ÀÀø‹›‹ÃÃÀË˛Ã€˛Ã‹˛ÃÀ˛Ã‹ÃÌÃ˛‹˛Ã‹Ã€ÃÀÀ<ffgf˝g}Õ›Ã՛êÕÃÕÃŒΩÕ˛ÃººÃÃ˛ºÃÃ˛º úºªººÃÃŒÃÕú˛Ã‹Ω˛Ãª3¸v˛wú››‹‹Ã‹‹À˛‹Õ˛‹˲ÃÀÀÃÀ˙ÃÀ¸ÃՋՋËÃËÃË‹€5˘gç˛ÕúºÕ˝ÃÕÃÕպúÃÃ˛º
  1106. úºÃººÃººÃÃ˛ºΩ›˛ÕúºÃÃÕ˛Ã6wwv˛wáwù˛›ÕÃø‹
  1107. ›Ï‹‹Ã‹Ã‹‹º‹˝Ã‹˛ÃÀÃ˲Ëϛ‹‹˙Ë‹; wgwwgwgwùÕ››˛Ã
  1108. ÕÕÃú՛ÕúÀ˛Ã˛ºúº˛ÃººÃºÃºÃºÃ˛ÕÃÕú˝ÃÕÕ6˚wáwùÛ›‹˛Ã˛ÀÃÕÌÕ˛‹ÀÃÃÀÀÃÀ˛ÃÀÃËÀ¸Ã‹fi›˛‹{ÃËÛ‹›;wwgg˝w≠ÕÕ›ÃÃ˛ºÕ˛Ã›ÕÕÃúÀººªºªººÃºÕÃú˝ÃºÃÕÕÃÃ∂6ºÃªªÃÃÕ;áwáw˝áΩ‹››˛‹››‹ÌÏ‹fi˛‹˲ÃÀ˛ÃÀÃË‹˛Ã‹Ã˝‹ Ì››SEÀÜUÛ‹6˚wxw≠ÕÕ›ÕÃÕ›ÃÃÕÓÕ›‹››ºÃº˛Ã˝º˛ÃÕÃÃÕÃÃÕÃÃÕ›Õ…THªvT4ΩÃÕ4˘áΩ›‹››Ï˛ÃÕÌ‘MÔÏÌ‹ÃÀËÀ˚ËËËÀËË‹›‹«el≈TUW€‹‹5˛wxw˛xÕ›Õ՛úúÕÕ≈GŒ››Ãºº˛ÃººÃ˝º˘ÃºÃÕÕ›áVäeDE|uÃÕ8˝áàáàà‹˛›‹Ã‹ÃÀÃ÷V‹˝›‹Ã‹Ã‹ÃÃÀ¸Ã‹›˝‹ËË‹›ÍvxuCV{ï4¨À4ww˝xàx˛›Õ˛ÃºÃºº«Vú›Õ˚Ã˛ºú˛ÃÕÕ˝Ã¸Õ
  1109. ◊VgT4G∂EEºº2˛áàá˛à‹ÏË˝Ã€˛Àv}››˝‹˙˸Ã‹Ã˛‹˛›
  1110. ÜVeCDßTDlÀÃ7wxx˛àxâÃÕÃúºÃfiúºÃwh›Œ˛Ãպúº˙úÃÃÕÃÃ˝›eGT4GT4D˛º6á˛à˛òô‹›˛‹ ÃÃTVxªÀ÷fÕ››˝‹ÃÃÀ˚Ã˝‹›‹‹˛Ì ÎÜgTVeTES\ÃÃ;xx¸àyÃÕ›Ã˛º35Fh´ΔE~fi›ÃÕÃúúúº˛ÃÕÃÕÃÕÃÕÓfi›€uwUgU5UD|ú9á˛àòòàò‹Ã‹‹˛Ãu˛TVxeZfi˝‹˝ÃÀÃË˝Ã‹›‹‹›˛ÌÌÈuÜUvTVdEÏÃÃ7w˛x˝àÃÃÕ˛Ã ºŸDUDDVeVŒÕÕ˚úú˝Ãº˛ÃÕŒÓfifiÈfvFfUfDCŒfi›9ááàà˝ò‹‹›‹Ã˛̅dCDVvÕ››˝‹˝Ã‹Ã˛‹Ë‹›‹fi˛ÓÓÿguVuVTD´Ã‹Ã;wxxyàâàâ‹ÃÕÃΩººΩÕ›ÑDDFvmÕ›Ì˛ÃÕ˝ºÃÕÃÕŒÕÃÕÕ˝Ó ∏gffUVTEººÃÃ8˛á
  1111. àòàòô¨‹›‹À‹˛Ã‹Ã«eTgl››˛‹¸Ã˛‹››Ì››‹›Ì˛ÌÌówevfwe|‹‹ÀÃ;w˛xà˛âå˛ÕÃúºÃúŒÖDGzÕ›ÃÕ¸ÃÕÕÃÕ›fifi›˛ÕflÔÓfiáfVfVhò¨ÃÕÕÃ6àá˛à˛ô¨‹››˛‹
  1112. ÀÃÀÀ∏ÜUUx››˙‹˛›ÌÌÓ›˛‹›Ó˛˛ÍáfvväªÃÀÃ˛‹< ààxàââôâúÃÕÕ˛Ã ÕîvVVfUi›Õ›˛Õ›ÃÕ››Õfifi››ÕÕ›Õ˛Ó⁄ággäª˝ºÃÕÃ:òòàòò˛ô¨‹‹›‹Ã∏uUTCCEffVõ˝›    Ì‹Ì‹Ì››ÌÌÏ˝‹fiˇÓˇ…óvyÏËÃÃÀ˛‹:˝à
  1113. âôâôõ‹ÃÕûS˛D
  1114. 44EVVfx›Õ›fi˛›ÕfiÕÕfi››˛ÕŒfiÓfifl⁄ôvKúÃÕê˛Õ;˛òà˝ô´‹››‹»TUeUUgvUUfxú˛Ìӛ̛ÌÌfiÌ›‹›‹›fiˇ˛ÌÓÈπ´ÃÃ˛‹À‹Ã‹‹9àà˛âôôöú›ÕÕÃΩàwâ™öúwfUVfz¸fi››fi›fifi›˝ÕÔÓÓ›ÕÀ˛ºÃÕÕ˝ÃÕÕ9òôôò˛ô©¨Ì‹›‹ÃÓ›‹‹Ã‹‹ñuTfWÕÓÓ˛Ì›ÓÌÓÌ˛›Õ›˛˛Ì‹˛Ã‹Ã˙‹Û6˝â˛ô    öùfiÕÕÃÃÕú˛ÃºfieEFgèfifi›fiÌÕÓ›fi››ÕÕ›fiÔÓÃÃ˛º˝Ã˝ÕÃÃÕ
  1115. d
  1116. °dONLNd
  1117. &m(B,CAROLINE ROSE, Palatino°dONLNd~ñä◊(¶¥Dear Readers,°dONLNd&ññ¢*NIn May of last year, I schmoozed with a lot of developers at Apple’s Worldwide°dONLNdu¢ñÆ* QDeveloper’s Conference, and one of the subjects that came up was documentation. I°dONLNd«Æñ∫˜* Mexpressed my ideas on this subject somewhat hesitantly, because I thought the°dONLNd∫ñΔÔ* Otruths I was spouting were all pretty obvious, but I was surprised to find that°dONLNdeΔñ“* Pseveral developers seemed enlightened by them and even suggested this as a topic°dONLNd∂“ñfi≠* for a °dONLNdº“≠fi“)develop°dONLNd√““fi=)% editorial. So here goes.°dONLNd›Íñˆ (¥TBut first, some motivation. If you’re one of those developers who think no one reads°dONLNd2ˆñÁ* Kmanuals anyway, has it occurred to you that this might be a self-fulfilling°dONLNd~ñ
  1118. * Oprophecy? If manuals were better, maybe people would read them. Also, customers°dONLNdŒñ¨* who °dONLNd“¨∑)do°dONLNd‘∑Ú) F never read the manual will never learn the full power of your product°dONLNdñ&’(B¥(probably not °dONLNd)’&Ô)?every°dONLNd.Ô&)> feature is self-explanatory) and will be that much quicker to°dONLNdm&ñ2ˇ(N¥Mmove on when someone shows them the great things a rival product can do. More°dONLNdª2ñ>    * Rlikely, people glance at the manual to get started and then thumb through it later°dONLNd>ñJ[* +when they want to explore certain features.°dONLNd:Vñb*RAlso keep in mind that a shoddy manual will be seen as a reflection of the product°dONLNdçbñn˙* Pas a whole: “If this is the best they could do on the manual, how good can their°dONLNdfinñz* Vsoftware be?” Don’t fool yourself that only writers or editors will criticize a poorly°dONLNd5zñÜ* Odone manual; any reader who has trouble learning from it will complain, and not°dONLNdÖÜñí* Rjust to themselves. While there are times when consistency may be the hobgoblin of°dONLNdÿíñû* Ssmall minds, it’s often the case that inconsistent presentation or terminology will°dONLNd,ûñ™ * Oconfuse readers and have them throwing your manual down in disgust and thinking°dONLNd|™ñ∂
  1119. * Qyour product is more complicated than it really is. And people who do know things°dONLNdŒ∂ñ¬¸* Nlike the difference between “its” and “it’s” will wonder how well you debugged°dONLNd¬ñŒ¯* Pyour code if you couldn’t find mistakes like this in your manual. Basically, you°dONLNdnŒñ⁄* won’t look like a class act.°dONLNdãÊñÚ˘*OI’ll state the following points with user documentation in mind, though most of°dONLNd€Úñ˛˝* Mthem also apply to technical documentation for developers. Some points may be°dONLNd)˛ñ
  1120. ˇ* Puseful only to small companies, but there should be something here for everyone.°dONLNdz®"Æ+•°dONLNd|¥"Õ) ?Get a technical writer to write your documentation. Don’t do it°dONLNdº"¥.‹* @yourself—and try to talk the CEO or VP of Marketing out of doing°dONLNd˝.¥:Ω* ;it. Contrary to many people’s opinions, writing a manual is xBx/(Ö. )2+Ç
  1121. CAROLINE ROSE)B (AppleLink CROSE) has been(ô¥0writing and editing software documentation since*
  1122. )many of you were rug rats. She began at a*
  1123. ,timesharing company, joined Apple in 1982 to*
  1124. write )inside Macintosh,); and helped get NeXT off(¡¥.the ground in 1986. Back at Apple now, she has*
  1125. seven issues of )6develop) under her belt and is still(’¥+having a wonderful time. A transplanted New*
  1126. ,Yorker, Caroline visited the East Coast last(èv2October in time to see the leaves turn colors. She*
  1127. -enjoyed doing the theater and museum thing in*
  1128. 1Manhattan and hitting some incredible restaurants*
  1129. ,and nightclubs — not to mention a deli whose*
  1130. 2smoked mozzarella is the best this side of Naples.*
  1131. 5But the highlight was her visit to a friend’s farm in*
  1132. /Connecticut  (sheep feeding beats sheet feeding*
  1133. *any day!). Walking to an apple orchard and*
  1134. 1tasting fresh sweet cider was sheer rural bliss.•(ÚDd)e)v)e)l)o)p)  )
  1135. March 1993ˇ◊#ˇ ˇˇˇˇ#◊ 
  1136. d, Palatino
  1137. .°dONLNdr6~[+TöCnot something any smart person can do; it’s a skill like any other.°dONLNdD~6ä[* @Most likely you are no more qualified to write the documentation°dONLNdÖä6ñˇ* .than a writer is qualified to write your code.°dONLNdµú*®0(ƒH•°dONLNd∑ú6®`) ALook over a relevant writing sample from your prospective writer.°dONLNd˘®6¥A* =Awards, certificates, and years of experience go only so far:°dONLNd7¥6¿`* Anothing will tell you whether you’ll get a good manual as much as°dONLNdy¿6ÃU* =looking at past work. Ask how the material for the sample was°dONLNd∑Ã6ÿI* <gathered, who else contributed to it, and how heavily it was°dONLNdÙÿ6‰W* edited.°dONLNd¸Í*ˆ0(H•°dONLNd˛Í6ˆE) =Get the writer started early in the process — long before the°dONLNd<ˆ6R* @feature set is frozen. Writers provide a valuable perspective of°dONLNd}6a* Ayour product, not unlike that of product management. They’ll help°dONLNdø6^* Cwith the design of the product, telling you what features don’t fit°dONLNd6&_* Cin with other ones and pointing out loopholes, inconsistencies, and°dONLNdG&62P* >other Bad Things. And they’re typically excellent bug finders.°dONLNdÜ8*D0(`H•°dONLNdà86DN) <Have the documentation edited by an editor. Unless they also°dONLNd≈D6P`* Ahappen to be editors, writers need their work checked like anyone°dONLNdP6\\* @else — and an electronic spelling or grammar check (while a good°dONLNdH\6hã* start) isn’t enough.°dONLNd]n*z0(ñH•°dONLNd_n6zZ) ETest the result on users, after your product ships if not sooner (you°dONLNd•z6ÜW* Acan revise the documentation for the next printing). And don’t be°dONLNdÁÜ6íI* Adefensive: if only one out of ten “testers” turns up a particular°dONLNd)í6ûQ* =problem, it may mean that 10% of your user base will have the°dONLNdgû6™Q* >same problem. Judge no misunderstanding as stupid; they’re all°dONLNd¶™6∂7* 5valid, no matter how much you may disagree with them.°dONLNd‹¬Œz(Í6OI could go on forever, but that’s enough for now. Please make my day and let me°dONLNd,Œ⁄è* Yknow if you got anything of value out of this. Or criticize it if you like; I can use the°dONLNdÜ⁄Ê£*  practice in not being defensive.
  1138. %A∞òÅ&Ä&HHgrˇˇˇˇˇˇˇ˛˛˛˛˛˛˝˝˝˝˝˝¸¸¸¸¸¸˚˚˚˚˚˚˙˙˙˙˙˙˘˘˘˘˘˘¯¯¯¯¯¯˜˜˜˜˜˜    ˆˆˆˆˆˆ
  1139. ıııııı ÙÙÙÙÙÙ ÛÛÛÛÛÛÚÚÚÚÚÚÒÒÒÒÒÒÔÔÔÔÔÔÓÓÓÓÓÓÌÌÌÌÌÌÏÏÏÏÏÏÎÎÎÎÎÎÍÍÍÍÍÍÈÈÈÈÈÈËËËËËËÁÁÁÁÁÁÊÊÊÊÊʉ‰‰‰‰‰„„„„„„‚‚‚‚‚‚······‡‡‡‡‡‡ flflflflflfl!fifififififi"››››››#‹‹‹‹‹‹$€€€€€€%⁄⁄⁄⁄⁄⁄&ŸŸŸŸŸŸ'ÿÿÿÿÿÿ(◊◊◊◊◊◊)÷÷÷÷÷÷*’’’’’’+‘‘‘‘‘‘,””””””-““““““.——————/––––––0œœœœœœ1ŒŒŒŒŒŒ2ÕÕÕÕÕÕ3ÃÃÃÃÃÃ4ÀÀÀÀÀÀ5      6………………7»»»»»»8««««««9ΔΔΔΔΔΔ:≈≈≈≈≈≈;ƒƒƒƒƒƒ<√√√√√√=¬¬¬¬¬¬>¡¡¡¡¡¡?¿¿¿¿¿¿@øøøøøøAææææææBΩΩΩΩΩΩCººººººDªªªªªªE∫∫∫∫∫∫FππππππG∏∏∏∏∏∏H∑∑∑∑∑∑I∂∂∂∂∂∂JµµµµµµK¥¥¥¥¥¥L≥≥≥≥≥≥M≤≤≤≤≤≤N±±±±±±O∞∞∞∞∞∞PØØØØØØQÆÆÆÆÆÆR≠≠≠≠≠≠S¨¨¨¨¨¨T´´´´´´U™™™™™™V©©©©©©W®®®®®®XßßßßßßY¶¶¶¶¶¶Z••••••[§§§§§§\££££££]¢¢¢¢¢¢^°°°°°°_††††††`üüüüüüaûûûûûûbùùùùùùcúúúúúúdõõõõõõeööööööfôôôôôôgòòòòòòhóóóóóóiññññññjïïïïïïkîîîîîîlììììììmíííííínëëëëëëoêêêêêêpèèèèèèqéééééérççççççsååååååtããããããuäääääävââââââwààààààxááááááyÜÜÜÜÜÜzÖÖÖÖÖÖ{ÑÑÑÑÑÑ|ÉÉÉÉÉÉ}ÇÇÇÇÇÇ~ÅÅÅÅÅÅÄÄÄÄÄÄÄÅ~~~~~~Ç}}}}}}É||||||Ñ{{{{{{ÖzzzzzzÜyyyyyyáxxxxxxàwwwwwwâvvvvvväuuuuuuãttttttåssssssçrrrrrréqqqqqqèppppppêooooooënnnnnnímmmmmmìllllllîkkkkkkïjjjjjjñiiiiiióhhhhhhòggggggôfffffföeeeeeeõddddddúccccccùbbbbbbûaaaaaaü``````†______°^^^^^^¢]]]]]]£\\\\\\§[[[[[[•ZZZZZZ¶YYYYYYßXXXXXX®WWWWWW©VVVVVV™UUUUUU´TTTTTT¨SSSSSS≠RRRRRRÆQQQQQQØPPPPPP∞OOOOOO±NNNNNN≤MMMMMM≥LLLLLL¥KKKKKKµJJJJJJ∂IIIIII∑HHHHHH∏GGGGGGπFFFFFF∫EEEEEEªDDDDDDºCCCCCCΩBBBBBBæAAAAAAø@@@@@@¿??????¡>>>>>>¬======√<<<<<<ƒ;;;;;;≈::::::Δ999999«888888»777777…666666 555555À444444Ã333333Õ222222Œ111111œ000000–//////—......“------”,,,,,,‘++++++’******÷))))))◊((((((ÿ''''''Ÿ&&&&&&⁄%%%%%%€$$$$$$‹######›""""""fi!!!!!!fl      ‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛ Ù ı
  1140.  
  1141.  
  1142.  
  1143.  
  1144.  
  1145. ˆ                        ˜¯˘˙˚¸˝˛ˇÄ&%A∞ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€
  1146. ů˙ˇÅÎ
  1147. Å˙˜ˇÅÏ
  1148. Å¸ÙˇÅÌ
  1149. Å˛ÒˇÅÓÅ˘ˇ˝¸ˇÅÓ Å˘ˇ˙¸ˇÅÔ Ç˙ˇ˜˝ˇÅÔ É˚ˇı˝ˇÅÔ Ñ˚ˇÙ˝ˇÅÔ Ö¸ˇÚ˝ˇÅÔ Ü¸ˇÒ˝ˇÅÔ á¸ˇ˝ˇÅÔ à¸ˇÓ˝ˇÅ â¸ˇÌ˝ˇÅ»˛ˇΔ¸ˇÏ˝ˇÅÀ˜ˇÀ¸ˇÏ˝ˇÅÔÕÙˇÕ¸ˇÎ˝ˇÅÔœÚˇÕ˝ˇÍ˝ˇÅÔ—˘ˇ˚˝ˇœ˝ˇÈ˝ˇÅÔ”˙ˇ˜˛ˇ–¸ˇÍ¸ˇÅÔ‘˙ˇˆ˛ˇ—¸ˇÈ˝ˇÅÓ’˚ˇÙ˛ˇ“¸ˇË˝ˇÅÓ◊˚ˇÛ˝ˇ”¸ˇË¸ˇÅÓÿ˚ˇÚ˝ˇ”˝ˇË¸ˇÅÌŸ˚ˇÒ˝ˇ‘˝ˇÁ¸ˇÅÌ⁄¸ˇÔ˝ˇ’¸ˇË¸ˇÅÏ€¸ˇÓ˛ˇ’¸ˇË˚ˇÅÏ‹¸ˇÌ˛ˇ’˝ˇÁ¸ˇÅΛ¸ˇÌ˝ˇ÷˝ˇÁ¸ˇÅÍfi¸ˇÏ˛ˇ÷˝ˇÁ˚ˇÅÍfl¸ˇÎ˛ˇ◊¸ˇË˚ˇÅȇ¸ˇÎ˝ˇ◊˝ˇË˚ˇÅË·¸ˇÍ˛ˇ◊¸ˇÈ˚ˇÅÁ‚˝ˇÈ˝ˇÿ¸ˇÈ˚ˇÅÊ„¸ˇÈ˛ˇÿ˚ˇÍ˚ˇÅ„˝ˇÈ˛ˇ◊˘ˇÌ˙ˇÅ‰¸ˇÈ˛ˇÿ¯ˇÔ˘ˇÅ‰‰˝ˇËˇˇÿ˜ˇ˙ˇÅ‚½ˇË˛ˇŸˆˇÒ˙ˇÅ·ʸˇË˛ˇŸ˜ˇÚ˘ˇÅ‡Á¸ˇË˛ˇŸˆˇÙ¯ˇÅflÁ˝ˇÁ˛ˇ⁄ˆˇÙ˘ˇÅ›˸ˇË˛ˇŸ˜ˇı¯ˇÅ‹ȸˇÁ˛ˇ⁄ˆˇ˜˜ˇÅ€È˝ˇÊˇˇ⁄ˆˇ¯˜ˇÅŸ͸ˇÁ˛ˇ⁄˜ˇ˘˜ˇÅ◊Í˝ˇÊˇˇ⁄˜ˇ˙ˆˇÅ÷νˇÊˇˇ⁄ˆˇ˝ıˇÅ‘νˇÁ˛ˇ⁄˜ˇÙˇ®ˇˇ≠ϸˇæÈˇ©˘ˇ∞Ï˝ˇΩΡ®˜ˇ±̸ˇæÌˇºˇˇÌˆˇ±Ì˝ˇΩÔˇº¸ˇÛˇ≤Ì˝ˇæÒˇª˙ˇ˙ˇ¸ˇ≤Ì˛ˇæÚˇ∫˘ˇÒ˚ˇ¸˝ˇ≤Ó˝ˇæÙˇ∫˜ˇÒ¸ˇ¸¸ˇ≤Ó˝ˇøÙˇºıˇÒ¸ˇ˚˝ˇ±Ó˝ˇ¿Ùˇ”¸ˇÛˇÒ¸ˇ¸¸ˇ±Ó˛ˇ¿Ùˇ”˙ˇÛÒˇÚ¸ˇ¸¸ˇ∞Ô˝ˇ¡Ùˇ”¯ˇ˜ıˇ¸ˇÒ¸ˇ˝˚ˇ∞ Ô˝ˇ√Ûˇ“¯ˇ˚Ûˇ¸ˇ¸ˇ˙ˇØÔ˝ˇƒÚˇ”Êˇ¸¸ˇÙˇÆÔ˛ˇƒÚˇ”Áˇ˚¸ˇÓˆˇ≠˝ˇΔˇ‘Áˇ˚˚ˇÓ¯ˇ´˝ˇ«Ôˇ’Ρ¸ˇ˝˚ˇÓ¯ˇ™˝ˇ…Ìˇ÷Ôˇ˚¸ˇ˝¸ˇıˇ™%˝ˇÀÒˇ˝ˇ◊¯ˇ˝ˇ˜˚ˇ˚ˇÚÒˇ¨(˝ˇÃ˘ˇ˘ˇ˝ˇÿ¯ˇ˝ˇˆÙˇÙΡΔÛˇ¯3˝ˇŒ¯ˇ˙ˇ˛˝ˇŸ¯ˇ˛˝ˇˆıˇ˜ÚˇÊˇˇˇ¸ˇ˘⁄ˇ˘"˝ˇœ˘ˇ˛˘ˇ˝˝ˇ€¯ˇ˛˝ˇÙ‡ˇ˙∞ˇ˘"˝ˇ—˘ˇ¸˙ˇ¸˝ˇ›˜ˇ˝˝ˇÙ‚ˇ˜≤ˇ¯"˝ˇ“˘ˇ¸˙ˇ˚˝ˇfl˜ˇ¸¸ˇÛÊˇÚ¥ˇ¯&˝ˇ‘˘ˇ˚˘ˇ˚¸ˇ„ıˇ¸¸ˇÚˡӫˇ¸˝ˇ˝ˇ÷˘ˇ˘˙ˇ˘¸ˇÊıˇ˙¸ˇÒÓˇï"˝ˇ◊˘ˇ¯˚ˇ¯˚ˇÎÚˇ˙¸ˇÔ˛ˇ¸ˇå˝ˇŸ˘ˇ˜˙ˇ˜˚ˇÔˇ˙˚ˇÅÒ˝ˇ€˘ˇˆ˙ˇı˘ˇ˜Îˇ¸˙ˇÅ˝ˇ‹˙ˇÙ˚ˇÛ·ˇ¸ˇ¸˙ˇÅÔÔ˝ˇfl˘ˇÛ˚ˇÚ¡˝¸ˇ˝˙ˇÅÓÔ˝ˇ·˘ˇÚ˚ˇÔΡ˘˝ˇ˛˘ˇÅÌÔ˝ˇ„¯ˇÒ¸ˇÏÒˇıÛˇÅÏÓ˝ˇÊ¯ˇ˚ˇÈ˙ˇÔÙˇÅÎÓ˝ˇË¯ˇÓ¸ˇœˆˇÅÈÓ¸ˇÏˆˇÓ˚ˇŒ¯ˇÅË̸ˇıˇÏ¸ˇÃ˚ˇÅÊÌ˙ˇıÙˇÎ˚ˇ ˇÅ„ϘˇˇË¸ˇÅ™ Í͡¸ˇÅ™ ËÓˇ‰¸ˇÅ© ÂÙˇ·˝ˇÅ®π¸ˇÅ®π¸ˇÅ®∫¸ˇÅß∫¸ˇÅߪ¸ˇÅ¶ª¸ˇÅ¶º¸ˇÅ•º¸ˇÅ•º˝ˇÅ§º˝ˇÅ§Ω¸ˇÅ§Ω˝ˇÅ£Ω˝ˇÅ£Ω˛ˇÅ¢æ¸ˇÅ£Ω˛ˇÅ¢ªˇÅ¢ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€ÅÅ€
  1150. d,     Helvetica    °dONLNdß$/Y+¸ICaroline Rose°dONLNdµ0;2* Editor v4v&,Times +˜" +
  1151. 3(è6SUBSCRIPTION INFORMATION*
  1152. To subscribe to )6develop), use the subscription card in(£67the back of this issue. Please address all subscription)≥-(≠6related inquiries to )@    develop, )Apple Computer, Inc., P.O.(∑6,Box 531, Mt. Morris, IL  61054 (or AppleLink*
  1153. DEV.SUBS).•(è˜ BACK ISSUES*
  1154. %For information about back issues of )|develop )and how(£˜5to obtain them, see the last page of this issue. Back*
  1155. issues are also on the )KDeveloper CD Series)I disc.•+SE EDITORIAL  ))
  1156. March 1992ˇx◊#ˇ ˇˇˇˇ#◊ 
  1157. d,     Helvetica.°dONLNdu5áç+S¢LETTERS
  1158. °dONLNdñ$µ(@¥TECH°dONLNd µ$∏) °dONLNd∑$    ) NOTES: WORD°dONLNd    $ )R °dONLNd $)IS°dONLNd$)  °dONLNd$0)OUT, Palatino°dONLNd (ñ4>(P¥#Why are the Tech Notes in Microsoft°dONLNdD4ñ@E* $Word documents? Are you assuming all°dONLNdi@ñL6* !developers have Microsoft Word? I°dONLNdãLñX?* &don’t think this is a good assumption.°dONLNd≤Xñd@* #Developers who don’t have Microsoft°dONLNd÷dñp,*  Word would be required to either°dONLNd˜pñ|A* (purchase it or get an illegal copy. Or I°dONLNd |ñàF* 'suppose they might be able to use their°dONLNdHàñîH* 'favorite word processor and convert the°dONLNdpîñ†4* $Tech Notes if such converters exist.°dONLNdï§ñ∞@*#Big developers may have the capital°dONLNdπ∞ñºJ* 'to purchase Microsoft Word but small or°dONLNd·ºñ»I* 'starting developers may not, especially°dONLNd    »ñ‘$* those enthusiastic and creative°dONLNd)‘ñ‡:* $programmers in school. It would be a°dONLNdN‡ñÏ;* %shame to force them to get an illegal°dONLNdtÏñ¯9* #copy of Microsoft Word so that they°dONLNdò¯ñ@* $could learn the same wonderful magic°dONLNdΩñ7* $tricks that others get from the Tech°dONLNd‚ñ¥* Notes.°dONLNdÈ ñ,F*(Is it possible to produce the Tech Notes°dONLNd,ñ8$*  in a minimal text editor such as°dONLNd38ñDF* %TeachText or DocMaker? Or better yet,°dONLNdYDñPF* $why not use Apple DocViewer like the°dONLNd~Pñ\˛* New Inside Macintosh °dONLNdìP˛\1)h
  1159. documents?°dONLNdû`ñl»(ॠ   — Hoon Im°dONLNd®uñÅG*(This is a timely question, as the format°dONLNd—ÅñçA* $of Tech Notes on the CD has changed.°dONLNdˆçñô* But first, some background.°dONLNdùñ©/* There are several reasons why we°dONLNd3©ñµ7* #distributed Tech Notes as Microsoft°dONLNdWµñ¡3* !Word documents. Internally we use°dONLNdy¡ñÕ>* $Microsoft Word as the authoring tool°dONLNdûÕñŸG* (for Tech Notes because of its relatively°dONLNd«ŸñÂE* &powerful formatting abilities and ease°dONLNdÓÂñÒ@* (of use. It also turns out that most word°dONLNdÒñ˝* processing packages, such as°dONLNd4˝ñ    ≈* MacWrite°dONLNd<˛≈ (#„®
  1160. °dONLNd=˝     I+ II, have translators that do°dONLNd[    ñ2(1¥"a reasonable job on Microsoft Word°dONLNd~ñ!A* %documents, so most people have access°dONLNd§!ñ-**  to the information. We’re firmly°dONLNd≈-ñ9∏* against°dONLNdÃ-∏9)" pirating software!°dONLNd·\$(@z%Also, our primary commitment has been°dONLNd$\0*  to providing the highest quality°dONLNd(0\<¸* #technical material possible; rather°dONLNdL<\H* &than focusing on format conversion, we°dONLNdsH\T* $chose to improve the overall content°dONLNdòT\`˛* #and organization of the Tech Notes.°dONLNdº`\l* (Only then were we ready to turn our full°dONLNdÂl\x˘* $attention to the question of format.°dONLNd
  1161. |\à˚* You mention Apple DocViewer as a°dONLNd+à\î* %possible alternative format — we have°dONLNdQî\†* %in fact converted the Tech Notes into°dONLNdw†\¨* #Apple DocViewer format (take a look°dONLNdõ¨\∏˜* "on the CD). Over time this will be°dONLNdæ∏\ƒˇ* #improved to provide better indexing°dONLNd‚ƒ\–    * &and cross-reference facilities — whose°dONLNd    –\‹    * %absence we’ve been painfully aware of°dONLNd/‹\ˉ* in the Microsoft Word format.°dONLNdMÏ\¯˘*— Neil Day, Tech Note Pooh-Bah°dONLNdl\c*L°dONLNdmcf)I°dONLNdnfÜ)CENS°dONLNdrÜâ) I°dONLNdsâë)N°dONLNdtëô)G°dONLNduôΩ) DOCV°dONLNdzΩ¿)$I°dONLNd{¿»)E°dONLNd|»“)W°dONLNd}“⁄)
  1162. E°dONLNd~⁄‚)R°dONLNdÄ\#Â(?zWe are a long-time Macintosh°dONLNdù#\/* %educational software developer. We’ve°dONLNd√/\;¸* #traditionally converted our printed°dONLNdÁ;\G‡* documentation to HyperCard°dONLNd    <‡DÂ(a˛®
  1163. °dONLNd    ;ÂG+ for on°dONLNd        ;G)-°dONLNd    
  1164. G\S
  1165. (oz(line use by our customers. I wondered to°dONLNd    3S\_Ú* whom we should speak to request°dONLNd    S_\kfi* developer licensing of Apple°dONLNd    pk\wî*
  1166. DocViewer?°dONLNd    {{\á¶*—Rhett Tindall°dONLNd    äê\ú*%Apple DocViewer documents are sourced°dONLNd    ∞ú\®˝* #from several word processors. These°dONLNd    ‘®\¥ * &documents must be processed in another°dONLNd    ˚¥\¿Í* application before they become°dONLNd
  1167. ¿\Ã* %DocViewer documents. This application°dONLNd
  1168. @Ã\ÿ* *is currently not of commercial quality and°dONLNd
  1169. kÿ\‰* (is for Apple internal use only. However,°dONLNd
  1170. î‰\˛* %we’re in the process of investigating°dONLNd
  1171. ∫\¸    * %whether to refine the application and°dONLNd
  1172. ‡¸\ * %make it available outside Apple. This°dONLNd \* &process may take some time and may not°dONLNd -\ ˜* #result in providing the software to°dONLNd Q \,˝* $external parties. Please stay tuned!°dONLNd v0\<ü* —In-Yung Kim lBl/(o0 +
  1173. 4+Ç
  1174. GIVE US A PIECE OF )OYOUR) MIND(ç¥)We welcome timely letters to the editors,*
  1175. 1especially from readers reacting to articles that*
  1176. we publish in ).develop). Letters should be(´¥,addressed to Caroline Rose (or, if technical*
  1177. develop)'-related questions, to Dave Johnson) at(ø¥+Apple Computer, Inc., 20525 Mariani Avenue,*
  1178. )M/S 75-2B, Cupertino, CA 95014 (AppleLink*
  1179. (CROSE or JOHNSON.DK). All letters should(Év*include your name and company name as well*
  1180. .as your address and phone  number. Letters may*
  1181. .be excerpted or edited for clarity (or to make*
  1182. !them say what we wish they did).•(ÚDd)e)v)e)l)o)p)  )
  1183. March 1993ˇ‘ ◊#ˇ ˇˇˇˇ#◊ 
  1184. d,     Helvetica.°dONLNd%5 +3PA°dONLNd% 5,) S°dONLNd%+55) Y°dONLNd%45?)    N°dONLNd%?5K) C°dONLNd%K5V) H°dONLNd%V5b) R°dONLNd%b5o) O°dONLNd%o5z)N°dONLNd    %z5á) O°dONLNd
  1185. %Ü5ë) U°dONLNd %ê5ú)
  1186. S°dONLNdC.SÄ(nLROUTINES°dONLNdCÄSÑ)R °dONLNdCÉSõ)ON°dONLNda}qõ(åõTHE°dONLNd<èõ(™Z    MACINTOSH0D:÷¥
  1187. E;’≥òÄ˙XÙ,,g»#'ˇˇˇˇˇˇÓÓÓÓÓÓ››››››ÃÃÃÃÃꪪªªª™™™™™™ôôôôôôààààààwwwwww    ffffff
  1188. UUUUUU DDDDDD 333333""""""XÙE;’≥Àª˝ÀªáÀªÃÀª˛ÀªÁÀª˚ÀªÂÀ¡˛ª´ª´˚ªºªºª˛ºª˛º˛ªº¸ªºªºªºªºªªººªºªºª˙ºªˆº ªºªºªºªºªºªºª˛º˛ª˛ºª¸ºª˛ºªª˝ºªº˛ªºªº˛ª˛º˛ªº˛ªºªº˛ª˛ºªºªºªºªºª˛º
  1189. ªºªºªºªºªºª˛ºª˛ºªºªºªºªºªºªºªºªº˚ª´˝ª˛ºªºº˘ªºªºªºÙª˛º˛ªºªˆºªºªº˛ªg˙ªÀ¸ªÀª¯ÀªÀÀ˝ª˛ÀªªÀÀªÀªÓÀªÙÀªflÀ¯ªÀÀ˛ªÀªÀªª∫˝ª˙ÀªÀª·ÀªÀÀª˚À¸ª¯ÀªªÀª¸Àª˛À˛ª˛ÀªÀ˛ª¸ÀªÀªÀªÀ»´ª˛´ª´¯ªººªªºº˘ª´ªªº˙ª¸ºªªººª˛ºªºªºªªººª˛ºªºº˛ª    ººªºªºªªºº¸ªºªºª˛ºª˛º˛ªºº¸ª´ª´˛ª´ª´ª´˛ª´˙ª´ª´ªªº˝ª¨ª´ªªºªªººªªºº˛ªºªºªºªºªº˙ªº˘ª´ª´ª˛´    ª´ªªºªºªª´˛ª´˛ª´˙ª´˜ªº˛ªºªªººª˛ºª˛º¸ª´ªºÉ˘ªÀªÀ˛ª˛Àª˙ÀªÀ˛ªÀª˝ÀªªÚÀª˚ÀªÀÃıÀªÀªÌÀÃ˘À˝ªÀ˙ªÀÀ˚ªÀÀ˛ª¸ÀªÀÀ˝ªÀª˙ÀªÀªˆÀ˛ª˚ÀªÀªÀÀªÀ˘ªÀÀª¸À˝ªÀ˝ªÀªÀ˝ªÀÀ˚ª¸ÀªÀ˛ªÀR„ªºˆªº˚ªººˆªº˛ªºªº‡ªº◊ª´ˆªº˘ª¨˙ªºıª´ª´˚ªºÈª´ª´ªºº˛ªºª˛º    ªººªªºªºªº¸ª¡ªÀ˛ªÀªÀª¸À˛ª˛Àª˛ÀªÀÀªª˛Àª˛À˛ªÀª¸Àª¸Àª˙ÀªÀªÀªˆÀ
  1190. ªÀªÀªÀÀªªÀª¸Àª˛ÀªÀ˛ª¸À¸ªÀ¸ªÀªÀªÀªÀªÀ˛ªÀ˛ª˛À˛ª    ÀªÀªÀªªÀÀª˛ÀªÀªÀª˛ÀªÀªª˛ÀªªÀªÀªÀ˛ª    ÀªÀªÀªÀªÀÀ˝ªÀªªÀÀªÀ˛ªÀªÀª˛À˙ªÀ˙ªÀª˛ÀªÀªÀˇªG÷ªºˆªºªºªº˛ªºªº¸ªºÚªº˜ª´Ôªº˚ª´‡ªºÂª´ªª´º‰ª´¯ªº˛ªº˝ªºªªº˚ª1Àª„Àª∏ÀªÀªflÀªˆÀªÂÀªÀªªÚÀª˜Àª˝ÀªÀªª˚ÀªÌÀyªªºˆªºªºÚªºªºªº˛ªº¸ªº¯ªº¸ªº˛ªºªºªºˆªºªºªºªº˙ªºªºªº¯ªº¸ªº˙ª˛º˛ªº˛ªºªºˆªºÙªº˛ªº˝ª´ªªºªº¸ªºªºÙªº˛ªèÀÀª˙Àª¸Àª¸Àª˛ÀªÀª˘ÀªÏÀªÀÀªˆÀªÈÀª˝À∫ªªÀª˙ÀªÀª¸Àª˛ÀªÀª˛Àª˛ÀªÙÀª¸ÀªªÀÀªÀª˛Àª˙Àª˛Àª˛Àª˛Àª˝Àª˝Àª¸Àª˛ÀªªÀÀªªÀÀª¸ÀªÓÀªÀª¸Àº˛ªº˛ªº˛ªº˛ªº˙ªº˛ªº˛ªºªºªºªºªº˛ªºªªººªªºº˛ªº˛ªºªºªºˆªºˆªºªºªºªª∫´ˆªº˙ªºªº´˝ªº˛ªº˛ªº˛ªºªºªºÙªºªºËªºªºÚªº´ıªºªº˙ªº˙ªºªºªº˝ª8¸Àª«À ÒÀªÍÀªÀªÀªÀÀª˜Àª¸Àª˝ÀêÏÀªÊÀªÀªËÀª˙ÀªÂÀ«ˆªº˛ªººª¸ºªºªº˛ª˛ºªºªºªºª¸ºª¸ºª¸ºª˛º´ºªªººªºª˝ºªªºª¸ºª˙ºª˛ºªºªºªºªªº˚ª˛ºªºªª˛ºªªººªª˛º˝ªºªª˛ºªº¸ª˛º    ªºªºªºªºªº˛ª˛ºªºªº¯ªºªº˚ª´ªªºªª¸º˝ªºª˛ºªºªºªº¸ªº¸ªººªªºªºªºªºªºªºªºªº˛ªºªºªDª˛ÀªÊÀªÂÀ∫◊ÀªÀªÀªÍÀªÊÀªÚÀª˙ÀªÀÀªª˛Àª˙ÀªÙÀªÀªÀªÀªÀªÀª¯À™˙ªºªºªº˛ªºªºº˝ªºª˛ºªºªºª˛º˛ªºª˛º˛ªºªºªººª˚ºªºªºªº˛ªºªºÛªººª˛ºªºªºªºªºˆªº˛ªºª˛º˛ªºª˛º¸ª˛ºˆªºªºªºˆªºªº˛ªºªº˙ªºÙª˛ºªº˙ªºªºªºªºÙªºªº˛ªºªºªº˛ª
  1191. ºªºªºªºªºªº ÒÀÃÚÀÃÅÀ®À€ªªºªºªºª¸ºªºª˛ºª˛ºª˛ºªºª˙ºªºªˆºª˛ºªºªºªºªºªºªºªºª˛ºªºªºª¸ºª¸ºªºª˛ºªºªºª˛ºªºªºª˛ºªºªºª¸º
  1192. ªºªºªºªºªºª˛ºªºªºªºªº˛ª¸º˛ªºªºªºªºª¸ºªºªºªºªº˛ªºªºªºªº˛ªºªºª˛º ªºªºªºªºªºªºª˛º    ªºªºªºªºªº˛ª˛ºªºªºª˛ºª˚ºªªºª˝ºçÀªÅÀ¸Àªº˛ªº˛ªºªºªºª˙ºªºªº˛ªºª˛ºª˛ºªªººª˛ºªºªºª˛ºªºªºªªººª˛º˛ª    ºªªººªªººª˛º˛ªºªºªºª˛ºª˛ºªºªº˛ªºªºªºª˛ºªªººªºªº˛ªº˛ªº˛ªº˛ªº˛ªº˛ªºª˛º˛ªº˛ªº˛ªºªºªº˛ªºªªºº˛ªº˛ªº˙ªºªºªºªºªº˛ªºªªºº˛ªº˛ªº˛ªº˛ªº˛ªº˛ªºªºªºª˛ºª˛ºªºªºªºªº˛ÀªÀªÒÀÂÀÃ∫ÀÂÀÃΔÀÂÀB¸ªººªªººªºªÃºª˙ºªŒº¨ÊºªºªªÒºªºªºº˘ªºªºª˙ºªºªˆº˛ªºªª˘ºªÎº!ªˆÀªÔÀÃÅÀÌÀªÀÀªªÀªÛÀªÚÀªª‚Àà˙ªº¯ª˙ºªºªºª˙ºªºªºªªººªÙº˛ªºª¸ºª¸ºª¯ºªÚº˛ªº˛ª˛ºª˛ºª¸ºªª˚ºªºª˙ºªº˙ª˛ºªºº¯ª˝ºª¸ºªºª∫˛ªºªª´˘ªºªºªºªºº˘ªºª˛º¸ª˙ºªºªººªÌºrÙÀªÀªÛÀÃÀÈÀÃ˛À˛Ã¸ÀÃÙÀÃ˙ÀÃÀÃ˙ÀÃÒÀÃÀÀÃ˙ÀÃÃÀÀÃ˛ÀÃ˛ÀÃ˛ÀÃÚÀÃÚÀÃ˛ÀÃ˛ÀïÀªªÀÀªÁÀ˛ª˝ÀÃÚÀÃÃÀÀÃ˛ÀÃ˛ÀÃÀôˆª´˝ª˙ºªºªº˛ª¸º˛ªºªˆºªºªª¸ºªªºª˛ºª¸ºªºªºªºª˛º˛ª¸ºªºªºªºªºªºªªººªºªº¸ª¸ºªºªºª˛ºªº˛ª˛º˛ªºªº˛ªºªººªººªºˆª˛º    ªªººªºªºªº˜ª´˝ªº˛ªºÙªº˘ª˝ºˆªÚºª^ª˜Àªª˚ÀÈÀïÀøÀÃÀÃÀÀ∫ıÀÃÊÀª˚Àª˛Àª˛Àª˘Àª˚Àª¸À˙ª˙ÀªÀªÀª˛Àª¸ÀªÀªÀ˛ªÚÀ˛ª˘ÀÃÀÃ˝Àzªª´Ûª¸º˛ªº¸ª˛ºªªºº˛ª    ºªºªºªºªºª˛ºª˛º¸ª¯ºªº˙ªº˙ªº˛ªºªºº˝ªºªª´ºªªº˚ª¸º¸ªºº˚ªºˆª´˛ªºÓª´Òª´Íª´ª´ª´˜ªºˆª¸ºª˙º\ÙÀªÀªœÀÃÀÑÀÃÛÀªÃÙÀª∫ª˚ÀªÀÀªªˆÀªˆÀªÀªÀª˛Àª¯Àª¸Àª˛ÀªÀÀ˝ªÀªˆÀªÀªÀª¸ÀÃÀÀÃ˛ÀÃÃÀÀ£˘ªº¯ª˛º¸ªº¸ªºªº¸ªº˛ªºªºªºªº˝ªººªºªºªˆº˛ªºª˛ºªºªºª˛º¸ª    ºªºªººªªºª˛ºªºªº˛ªºª˛º    ªºªºªººªºº¸ªº˛ª´˙ª´˛ªº˜ª´ªªº˝ª´ª´ª´˛ª´Ôª´´˘ªºªº˝ª´ª´ªªºªºª¸ºª˚ºâª¸Àª¸ÀªªÁÀª˛ÀªfiÀª˛ÀªˆÀªˆÀª˛Àª˙Àª˙Àª˙Àª ™ª∫´ªÀªÀ∫ÀªÀªÀªªÀÀªÀªÀ˛ª¸À∫´ÀÀª˛À    ªÀªÀªÀÀªªÀ˛ª˙ÀªÀªÀª˛Àª˛ÀªÀªÀ˛ªÀªÀªÀª˙À˙ªıÀÃÀÀ}Óªºªº˛ªº¸ªº˛ªº˜ªºº˛ªºªºªºªºªº˛ªºª˛ºª˛º¸ªºªº˙ªºÍªº˛ªºªºªº˙ªº¸ªº˝ª ™ô™äªª´ª´´ªª´Ôª´◊ª´ª´˜ªº˛ª´´˘ªº˛ªºªªººªº4ÀÀªæÀÃÊÀª‹Àª∫©òòà˝ª∫ªÀªöªÀª˚Àª˙Àªª÷ÀªªÛÀ˝ªÀ∫˚ªºªº˛ªº˛ª˛ºªºªºª˛º˛ªºªºªºªº˛ªºªºªºªºªºªºªºª¸ºª˛ºª¯º˛ªºªºªºªº˛ª
  1193. ºªºªºªºªºªº˛ªº˛ªºªº¸ªºªºª˛º˛ªºªºªº¸ª ºªª™òhàâôáz´˛ª™ªªäÙªº˝ªõº˛ªºªº˛ªºªºªº¯ªºÙªº˝ª˛´ªªºªºª¸ºª˛ºªºº]˝ÀªûÀªÀªÀªÀªÀª˚À∏wö∫ªªπxôôªª∫ªªôÀªÀª¯Àª˛À∫õ˛ÀªÀª˚ÀªÀª˛Àª¯Àª˛Àª¯ÀªÀª˙Àª˛ÀªÀ¸ªÀê´ª´˚ªº˙ªºªªºº˛ªº˙ªºÚªº˛ªº˛ª ºªªººªºªºªºª˝º˛ªºº¯ªºªº˛ªºªºªºÌª´˛ª´˙ª´ªªºªª˛´ª´ªòôx䲴ªâªõª´ª´ˆª∫õͪºÌª´˜ªºªª´ª´˚ª ºªºªºªºªºªªºº\ÙÀªÀªÏÀª˛Àª¿ÀªÀª˛Àª˝ÀªÀÀªÚÀªÀ˛ªπ™©àöª™ªôÀ∫ÀªªÀ∫∫´Àª˚À∫õ¸ÀªÀªÍÀª˙Àª˛Àª˙Àª˚À¸ªÀò˚ªºªºªºº˚ªººªªº˙ªº˛ªº˛ªº˙ªºªº˛ªºªª˝º˛ªºªºªº˛ª˛ºªºªºªºªºªºªºªº˝ª´Úª´Ïª´˙ª´ª´ª´™ä©wxä™´ôª™´ªª™™©x´˙ª∫õÓª´Èªº˛ªº˛ªº˚ª´˝ªºªºªª˛ºªº˝ªºªØªÀªÀª˙Àª˛ÀªˆÀª¯ÀªÀªÀª‡Àª˙ÀªÀªÀª˛Àª¯ÀªÀªÀªÀªÀªÀªÀªÀª˛ÀªÀªÀªÀªÀªªÀÀªÀªÀ¸ª∫®á®àáwô™òÀ∫´∫∫™ªÀ®õÀ˛ªÀªÀπ´ÀÀªÀ˛ªÀªÀªÀ˛ªÀ ˝ªÀª˛Àª˛ÀªÀªÀªÀªÀª˛ÀªÀªÀª˝Àªª˛ÀªÀ¸ªÙÀª˛Àã˙ªºªºªº˙ªºªº˛ªºªº˛ªºªº¯ªº˛ªº˛ªºªºªºªºªº˛ªºªºªºªºªº˙ªºªº¸ªº˜ªºº˛ªºÔª´Ûª´´ª™™öò䙩áyôપö™ö´˛ªä˙ªπúϪºÎª´Ùª˛´˝ªº˛ªºªºªº˚ªD˚ÀªÀÂÀÃ÷ÀªÒÀª˝Àª˚Àª¸Àª∫ªª∫™∫∫πä∫∫©áôò∫ªπ©ªª˛À∫˙ÀπªΔÀªÌÀù˘ª˛ºªº¸ªºª˛ºª˛º    ªºªºªºªºªº˛ªº˛ª˙ºª¯ºª¸ºª¸º˛ª˙ºª¸º¸ªºª˛ºª˝ºªªº˜ª™´´¯ª´˚ª™´´™˛´ ©â´´™òxàä´©ö´¸ª´ªªº˛ª©´ºÍªº˛ªºˆªº˙ªº˛ªºªº˙ªººªª˙ºªº˛ªºªrıÀªÀ˛ªÏÀª‚Àª⁄Àª˛ÀªÀ∫∫™©™ª∫˚ªÀªÀ˝ª∫™˛∫ª∫π®´∫∫©óx©™©õ˛ªÀÀ˛ª¸Àπ˚ÀªªÀª˛À˛ªÀªÀª¯À
  1194. ªÀªÀªÀªÀªÀª¸ÀªÙÀ˛ªÙÀª¸Àɪº¸ªºªºˆªº˛ªºÓª    ºªºªºªºªºª˛º˙ªº¸ªº¸ªº˙ªºÚªºªºˆª´´ª™©wâ♸´ª´´ª˝´™ö´™´´©â{˛™òg™˛ö´´˛ª∫´˚ª©—ªº¸ªºªº¸ª˛ºª˛ºª˛º˙ªº~Àª˙Àª¸ÀªÀªÓÀª˝Àª›ÀªÙÀªÚÀª˛À ªª∫∫©òáefwàô™¯ª∫∫˛™ª∫ª∫òà˛∫©Üäò™©∫˛ªÀª´˛ª˛À™˝ÀªÀª¸Àª¸ÀªÀª˛Àª¸ÀªÀªÀªÀ˛ª‰Àª˙Àª˝Àû˙ªºªªºˆªºªº˙ªº˚ª
  1195. ººªºªºªºªºª˛ºª¸ºªºªº¸ªºªºªº¸ªº˛ªº˛ªºÚªº˜ª´´™ö´´™™ôôâààâö´™´™´™˛´™´öö™™öàáõ™™©àhà´™˛´˛ª´ª´˝ªä‰ªº˚ª´ª´ªªº˙ªºªº˛ª˛ºªª˙ºª´¸º˙ªõª˛À¸ª˙ÀªÀªÙÀª˛ÀªÀªÀªÓÀªÚÀª˙Àª¸ÀªÀÀªªÀªÀª¸Àª˛À¸ª∫™˝∫ª™˛∫πô˛òô™™òàò˛ô˛òô©©òáyô™πòÜâ™π´™˝ª™˛ªÀª ö˛ÀªÀ˛ª˛ÀªÀÀªª˛ÀªÀªÀªÀªÀªÀÀªªÀ˙ª˛ÀªÀª‡ÀªÀ§¸ª´´ªªºªºÚªºˆªºªºªºªºªº˛ªº˛ªº˛ªºˆªºÚªº˝ª´´˜ª´ª´ª˝´™ôö´™´™ôö¸™    ôàâàwxàxôô˛à˛âö™©àxàxäàÜiö©õ˛´    ª´™´ª´ªª∫õ˛ª´˚ªº˜ª´˝ªº˚ª˛´ª´´Úªºªº˛ª˛ºªºªºªºªº˛ªº˚ªx˝ªÀª¯À˛ªˆÀª‡À˝ª˘Àªª˛ÀªÀÀªª˜ÀÚª    ∫∫©™∫∫´∫πò˛à ô©ô©òòôòááà©òòô©ôôòö∫∫®à©áxòáxô∫ö¸ª∫˝ªÀ∫ªÀ˛ªÀÀªª˚Àª¸À    ªªÀªªÀÀªÀÀ¯ª◊À ºªª´˝ªº˛ª ºªºªºªºªºªºª˛º¯ªºªºªºªºªºªºªºªºªºªººªºº˝ª´˚ªºªº˙ªº˛ªºªº¸ªºªª´ª´ª´ª˘´™´™ö™´˝™öôágfV¸gxàwwàxôàxâöâàä™ôwä™áwxwy´ä˝´ªª´´˛ª©´ªª´˘ªºªºªº˚ª´¯ª´ª˛´ª´ªªº¸ªºªºªº˛ª˛ºª¸ºªºªºª˝ºªª˛º˛ªáªÀªªıÀ˛ªˆÀª˙ÀªÏÀªÀÀ˝ª¯ÀªÀ∫˛ªÀª˙ÀªÀ˙ª∫ª˘∫©ô˝™˛©òáSDeUfee˛TEVváwwvvex©òà™®á䙩ñxÜwö©∫ª∫ªª∫¸ªπ¯ª˙ÀªÀ¸ªÀ˝ªÀªÀ˜ªıÀªÎÀª˛ÀªÀ߯ªº˘ª´ªªºÓªº˛ªºª˛º¸ªºªºˆªºªºÎª´ª™™´™ôö™öö™öö™ôôâ˛ö
  1196. ôàôxvED4VUU˛VUD3##4344EUEiôàxòxy™™ágwgj©¸´ ª´ª´ª´ôªª´ª´Ùª´˛ª´˛ª´¸ª´ª˛´ª˛´˘ªº˙ªºªºªºª˛º˛ªºª˛º˛ªº˛ªº†À˛ªÀªª˘ÀªÀª˛Àª˙Àª˙ÀªÍÀªÀÀªª˙ÀªÀÀª˝ÀªÀªÀª˛Àª˛À˛ª∫©©ò˝à˛ò2àôòààôô©òàáwwvvffeefUeTDC32"!"3DDTEwòòáàw™©Üáwwg©´∫˛ª∫˝ª ôªªÀªÀªˆÀªÀª¸ÀªÀªÀªÀˆªÒÀÃÌÀªÀÀ£Âªºªº˚ª´˝ªºªºªºªº˚ªºªªºˆª˛º˜ª´º˚ª´ªª˛´™™ôàxàâ˛à˛w    fVgwxwgUUV˛g!vVD343""!#345DWweWfyôUyágvâõ˙´ªª∫ä´Òª´ıªº˝ª˛´ª´˚ªº˛ªºªºªª˚ºª˛ºªº˛ª ºªººªººªºªºª¿ªÀªÀª˛Àª¸À
  1197. ªÀªÀªÀªÀªÀª˙ÀªÀª˛Àª˛ÀªÙÀª˛Àª˛ÀªÀª˙ÀªÀªÀªÀªÀ˛ªÀªÀªÀ˝ª¸∫™©ò¸áàveTTD˛TDC˛234S3DB! ˝2#CEUUDTVwTâóváââ™∫ª∫ª∫˛ªπö˛ªÀ˛ª
  1198. ÀªÀªÀªÀªÀªÀ¸ªÀªÀªÀªÀªÀªÀªª∫˚ªÀªÀªÀªÓÀªÙÀíͪºªºªº˙ªº˛ªºªºˆªºªºÔª˝´ôâààx˛àwwfT4D33˛"˝˘"#4EDFEfFxâvhgxxõ˙´™õ´˝ª´Òª´˘ª´˛ª˚´ª´˛ª´˝ªºªºªºª˛º˛ªº˛ªº˛ªºªº˘ª\µÀªªÀª˛Àª¸À˝ªπ©ôávwvwuUUC2!‰!"" #UfTUvfwâógvâóä∫ª∫˝ªπ´ªª˛Àª¯Àª˛ÀªˆÀªÀÀ˘ª˝ÀªfiÀ∞˘ªºªºªºÊªº˛ªº¯ªºªºªº¯ªºªºªºÒª´ª´´™öôàáfUUD#!˛˛"""#4UEEVggxòWáâóiâõ´ª´ª™òâö´˛ª´ªªºªº˝ª´˘ªºªºªº˚ª´ª´ª´˘ªºªºªºªºª¸ºª˛ºªºªºª˛ºª¸º˛ªqªÀª‡Àª⁄ÀªÀªÀªÀÀªª˛À˛ª˛∫©òvvdC32!¯Ì!¸! 3C4UeEfvwàvóxñhuy™∫∫™∫ò∫©ôªªÀªÀªª˛À
  1199. ªÀ ªªÀªÀªÀªˆÀª∫˙ªÀªÀªfiÀ{´¸ª´”ªºªºÚªºÒª´ª´™™ôàáfU3""˛˛Ò˝˛#3$EVEVfghvxgt7u7ä™™´´öªª®ãıª´ª´ª˚´ª´˜ªº˛ªº¸ªº¯ªºªºªº˝ªà˛ªÀÀªÚÀª˛ÀªˆÀª⁄ÀªÀªª˛ÀªªÀÀª∫ª∫®àòvdC2¸!""!!"!Ì !˛"22˚"DEfdfvffehátháEw™˛ª´ªª∫™ÀÀª˚ÀªªÀªÀªÀªˆÀªÀ¸ªÀ˛ª˛Àª˙Àª˝ÀÃıÀª˜À◊ªª´´ªªºÒª´ªªºªº˛ªºªºªª´ªªº˛ªºªº˛ªºªº¸ªº˛ª ºªºªºªºªºªºªº˜ª´ºª´´™™óVUD#"##˝"#"˝˛˛˛˛    ˛""##""#DEUFgfTEXweyöegõ´ª∫õ´ª´™´ª´˛ª´˛ª´¸ª´˝ªºªºªº˝ª´˛ª´¯ª´ªªºªºªºª˛ºªº˛ªº˛ªºªºªºªº˛ªº˛ª®¸ªÀª¸ÀªÀªÀ˛ªÀªÀªÀª˛Àªª˚Àª˛ÀªˆÀª¸ÀªÀªÚÀªÀªÀ˚ªÀª∫∫©òuTB˝3    C3322""!Ô˛˛!"!""2""22""#DDUVÜeUfgófâ™ñg™ªª∫˝ª∫˛ªÀÀ˛ªÀ¸ªÀªÀªª˚ÀªÀªÀ¸ªÀªÀ˛ªÀ˛ªÀªÀªÀªÙÀïÚªºªª´˛ª´ÒªºªºªºÛª´ıªºˆª´˛ª´™™àwTD3343#43##3"˝Ú˛"˛"""˛#34DEg˛f WáVä™áhö´´™´˝ª´˚ª´¸ª´˛ª´˝ªºªº˙ª´˝ª´˝ª´´˝ªº¸ª˛ºÚªº˚ªçªÒÀª˛Àª˙Àª˝ÀªÀÀªˆÀªÁÀª˛ÀªªÀ˛ª ∫∫©áwdTDDTDD˛C33˛2"!!Û˝!"˛23˝2"2232˛3DTVwáffágö©áx∫ªª∫ªªÀªÀª˛À˙ªÀªªÀÀªªˆÀªÀÀªÀ˛ª˛ÀªÀÀªfiÀ»Ûªºˆªº˛ªº˙ªºªº˛ªº˛ªºªºªºªºªºªºªºªºªºªºªºªºªºªº˛ªºªº˝ª    ™™ôwgfUD4E˝D443#"""¸˛˛#3"#"˚#334FwxfVwWâòáz´ö´™¸ª´º¸ª´ªº¸ªºªº´ªª˛ºªºªºªº¯ªº¸ªºªºªººªª¸º˛ªºªºªºªº˛ª˛ºªº˛ªuÔÀªÀªÀªÛÀªıÀªˆÀª˙Àª¸Àª˚Àªª∫™®vveUTUTTCD˛C3˛2!!"!˙˛!˚!!˝2˛3¸2˝3Dfwveveâòáä∫™™´˛ªÀÀª˝ÀªÀªæÀª˛ÀǯªºÚªº˝ª´˜ªºˆªº‰ª˛´ ôáfUUEEUED44˝3˝"¸˛˚˛""˛#˛"#"˝#35VV˛Uhàx䲙´´ª´ÈªºªºÙªºˆªºªª˚ºªºªº˛ªºªºªº˘ªhªÒÀªÓÀªŸÀ¸ª∫∫©óu¯UTDCC22¸"˝"!""!!!˛!˚"2"!"2232˛3˛233C33EfdTExàòö∫™©¸ªÀªªÛÀª¸Àª·ÀÃÍÀŒ˚ª ºªªºªººªºªºªº˛ª ºªººªºªªºªºªº˛ªºª˛ºªºªº˚ªºª˛º˝ªº˛ªº˛ªºªºªºªºªª´ª´´™™áUDEUUE˛UDEED4D3˛""#"""˝"˛""˝#"""˝#"˛#3#3˛4 EVUUEXyòä™™ö˛´ª´ª´ª˛´ª´ıªº˛ªºªºªºª˛º˝ª˚ºªºªºªºº˚ªº˛ªº˛ªgªÌÀªÔÀª‹À    ªª∫©ôòÖDDT˛U
  1200. TTUTTDDCC33˝"2"22"2!!"2!""2"˛2˛"˛232˝"!˝"2"22˝3˛D UeUegôáö™™©∫∫ˆª˙À´¡À‡˙ª ºªºªºªººªªºªº¸ªºªº˛ªº˛ª ºªºªºªºªºªºªº˛ª ºªºªºªºªºªºº˝ªºªºªºªºªº˝ª ™àwfT4EEUUEUE˛D33#3""˝""""#""˛#"#¸"#""˝"˛"#3#334DD˛EfGâwö™™ä˜´™´ªªº¸ªºªºªºªºª˛ºªªººªºªº˙ªº˛ªºª˝ºªªºªª˛ºªªºªªºº˛ªº˛ªºªªºªªºtıÀÛÀªÁÀªÀªª∫óweTTUUfeUUeUTC˝32!¸!"˛2"˛2""2˛"3˛23322!"!!"2"˘233CCDTUTUffwwö©©™™∫∫ª˛∫ª∫∫˛ª€ÀÃÈÀÃ˙ÀÃÀ˜ªºªºªºªº˛ªºªº˛ªºªºıªºº˙ª ºªªºªºªººªºªº˛ªºªºªºªº˚ª™òvVUEUU˛VEEU˝EDD3""˝#"#""¸"˚#3"˛¯"##"#˝4EEUEVfeFyöôöö™™´˛™´™™´´˙ª ºªºªºªººªººªº˛ªºªºªº˛ªº˛ªºªºªºªºªº˛ª˛º˛ªºªºªºªºª¸ºªªºº˛ªìªÀª˛Àª‚ÀªÀª˙ÀªÀª¸Àª¸ÀªÙÀ
  1201. ªª∫òávfeUTU˝eUUTUeffeT32!""!!˝" 2322"22"2232˛323˝2"ı2˛324DTDDUeUfvwTVxò©©˛™©™∫©™∫∫˛ªÀª˛Àª˛ÀªÀªÙÀª˛Àª¸ÀªfiÀÀ˙ªºªº˛ªº˛ªºª˛º˛ªºªº¸ªºªº¸ªºÙª
  1202. ºªºªªºªªºªº¸ªºº˛ª ´ôàxwgeEEUUff˝UEDED˛E33˝""˚#"#"#33#3##"#"##˝"˝#3#3#3"##3345ED˛EUVggwUfUxàxâôôöôö™ö™˝´Ùª    ºªºªºªºªªº˚ªº¸ªºªº˛ªºª˛º˛ªºªº˛ª
  1203. ºªºªºªºªºªº˛ªºrÎÀÃÀÃŒÀª©©òáuSDDTUffeUTTUTDDTDDC˝32"22"2"33¸C3¸C˝32322"223C˜3C3DUe˛UffvfàwfeUwáwwà˛ô©©˝ô©´ª˛Àª˛Àª¯ÀªœÀ◊ªªºªºªª˚ºª˛ºªºª¯ºª˙ºªºªºªºªºªºªºªºªºª¸ºª¸ºªºªºª˛º    ªºªª™ôàáVE˛V˛f UT4EDD34EDD3˛#33##3"˝#4EUEUD44E433#3#"##""˘#˛3&##344EDVVUEVfeVxgágvFxàwgxâôàäôöôöôöö´´˚ªº˛ªº˛ªºª˛ºªºªºª˛ºªºª˛ºª˛ºª¸ºª˛ºª˚ºªººª˚ºªªsµÀ˛∫òvfef˝vfveTDC3C3DTTCC233C332˛3˝C DUeeS3C332"2˛"2""22"˝2˝3CC334˛UfvUfveVwwàÜgugàávfàô©à©™¸∫™∫∫ªªÀÀªªÈÀÃflÀfl˙ªºªºªº˛ªº˛ªºªºªºª˛º˛ªººªºº˛ªºªºªº˛ªº˛ªº˛ªºªººªªºªºªºªºªºªº˝ª´´©à¸f˛g˛f
  1204. UDD33434D33˛#443"43##44D4DEV˛D3##""˛˝"#¸"###3#4DD44EVUVfUVfUEgwxàVhfVUDDFxöàyö˙´™™˛´˚ªºª˛ºª˛ºª˙ºªª˝ºªºª˛ºªºªºª˛ºª˛ºªºªºªºªºª˛ºªºÖµÀ∫™á˛vfvwvwwáfvedTDCC34˛D
  1205. C3DCDDC3322˛3
  1206. DTDDTUUTTC2˛"¸2"˙23˛CDUDUU˛feVveTwvàávfvffvt3gàôò™™∫∫ª∫˛ª˛∫˛ªÀªÍÀÃ˛ÀÃ˛ÀÃıÀÃ˚ÀøÀπªªº˛ªºª˛ºªº¸ªºªº˛ª˛ºªºªºª˛º¸ªº˛ªº˘ªººª˛º˜ªºªºº˛ª∫òweVf˛g¸wfUT˝4D3#3#3#4334ED43#"##4˛3    4D5DD3##"#¸"""#""˛#34DEEUVUV˛fFfVTVfgfUEDEUVxeWgxàö™˚´˛ª™™˚ªººªºªºªº˛ªºªÓºªºªÌº~˙ÀªæÀ∫©òwwug¸w ávveUTDDTDT33˛2
  1207. 33C234TCCDC˛3C3˝C332"!˛"2˛"2"˚2%323DDUefvvffeTefeUffeUUTDVeVàÜvwòò™™∫™˝∫    ´ªÀ∫´ÀÀªÀªÁÀÃÂÀ¿¸ªºª˚º˚ª˛ºª˛ºªª˚º˚ªºıªºªºªºªº˛ª˛ºªºªºªºªª´™ààww˛gxwxxwwgfeUUEEDD33#3#3#3#34D3#˛4    34D4D43#3#˛""˝#˛3##"#"##344EUVggfVVUEfUU˛DEE˝DFgàwfyôâö™´™öôàä´ªª™´ª´Ûª˛º˝ª˘ºª˛º¸ª˝ºªººª˛ºª˛º˝ª˜ÀÃÚÀª˛ÀÃ˚ÀªflÀ    ª∫∫™©óávwv˛w
  1208. àòááveTTDUT˛DC˚3C˛DT3CC¸D˛C˛323322"˛2¯323˝D$UfvvefvuEvUdDTDTC32324Vwávxôòô©òààô™∫˝ªÀÀ˛ª À‘    ºªººªªºªºª˛º˛ªºªºª˛ºª˙ºª˛º¸ªº˛ªºª˝ºªººªºªºª˛ºª˛ºª¸º˝ª™ôwwgww˝x
  1209. wwfUVUUDD34˛D433"#"#4D4D34EED4DD44ED33˛#""##3#˙3.434334EUEVgfVfUU5VED43ED3"#2Vgwgxààxxâö™´´ª´˜ªºªºªºª¸ºªºªºª˙ºª˙ºª˙ºª˛ºª˛ºªººªºàªˆÀª˛ÀªÓÀªÀª‚ÀªÀªÀ∫πóáwwááààáávvffeUTTSCD˛TDCC33233CDDCCDUeTTDC3DCC˝3223DC˝3˘D$CDUeeUfvwvUS3TC4B3DB32"3C24Vvefwàòô™˛∫˚ªÀªÀªÀªÃÀ“ª˛º    ªªººªºªºªº˛ª˛ºª˛ºª˛º˛ªºªºº˜ªºªº˛ªºªºªºª˛ºª˛ºªªº¸ª´ª™ò˛wxwg˝x
  1210. wwffU44ED44¸D˛4#34EDD4D4EVUDD4433#3##433##˝344EEUVUD˛E"UVUVfUVU4D3"##43"#!3#3$FVWxwââö™˙´Ïªºªªººª˛º˛ªºª˛ºª˛ºªª˝º ªºªºªºªªººªºw∫À    ªÀ∫πáávwáá˛à
  1211. òààááveUTDD˙T    DC3CDCCDTT˝DUUTC˝DTCC¸3C332˛3DUUfvvUTUefuffefTUdD˛2 32!""34BE˛wáyòô™∫∫˝ª˝ÀªÀªÀÀ–ºªº˛ªºª˛ºªº˛ªºªºªº˛ªººªªºªºªºˆªº˛ª    ºªºªºªºªºº˝ªº˘ª˛™à˛wxxà˛xàxxwwf˛U¸D EDEUD43#44344¸DEDD˛4EUUEEDD44˝3¸#34EVwgfgg˛fgwfUVUC˛#3"!˛ #43Fwxwhöâö™¸´ªº˝ª´Ûªºªºªºªºª˛º˛ª˛ºªº˛ªº˛ªºªª˝ºª¸ºª¢ıÀª˛ÀªÓÀªÀªÏÀª˙À
  1212. ªÀ∫∫©òáwààá˛à˛áwwávvfefeUTSDDCDTCDC˛3CDDC˛DTTDTDDTCDTTCDSCC33C32232˝3DUgáàávfgàÜeUfeR"˛32!˙"2$fwáwâ®ô™∫ª∫∫˙ª ÀªÀÀªªÀªÀªÀªÀ˛ªÀª¯ÀªÊÀ‘ªº˛ªºªºªºªºº˝ªº¸ª˛º˛ªºªº¯ªºªªºº˛ªº˛ªºª˛ºªº¸ªº˝ª™ôàgwxxàwxàxwwg˛wfg˛fT4EU˛D˙43˛43˛4D4D4EDD34DC#434D˛4DD44334E44DEgàxwfwweEUVU2##43""˙˛$Vgxgââö˛™´´˛ª´ª´ˆª´˜ªºªºªº˛ªºªªºº˛ªº˛ªºª˛ºªªºªªºªºÜ‹ÀªÀªÂÀªªπòwwá˛àááàáwá˛w˝veUTDTU˝TC33DDT˛UTT˛DTUTTDDCDCDCCDDTTC˛D¸TDUTDUTUf˝wvdVeUTC˛232!¯ 4Vvvy®ö™™∫˛ªÀ¸ªÀª˛Àª˛À¸ªŸÀ‰º˚ªººª˛º¸ªºªºªºªºªºªºªºªºªº¸ª
  1213. ºªºªºªºªºªº˛ªºªºªºªºªºªºªºªª´™àgxwxà¸x
  1214. wgwwgffVVUE˛D4DD˝3+#3434DDEEDDEDEEDEVEUDDEUUT4D34DED44EUVUC4EVf˛VxeWdFUD3#3#˛˛ 4VfWâäö™˝´˛ª´˚ªºªº˝ª ´ªªºªºªºªºªºª˛º˛ª ºªºªºªªººªººª˘ºªºª«ªÀªÀª˙Àª˛ÀªÀªÀª˛Àª˛Àª˛Àª˛Àª˛Àª˛Àª˛Àª˛ÀªÀª¸ÀªªÀÀªÀ˛ª∫Üvvwàà˛áw˛áv˛wveeTTU˛T    DTUTTDCDC3˛233DTDTUTDTUUefeUUfeTUeUUTUU˛TUUTDUUffvvVwuWÖfdC2"2"!˛!¯    3Dfvxô©™˛∫ªªÀ¸ª˙ÀªÀ¸ªÀªÓÀªÀè˙ªºΔª´ª©˝wxxà˝wxx˝w gfVUUED34D4E˛UEEDD443¸4D˛4
  1215. 34DD5DDEDED¸EDE˛UVfUVVUfhxwfVwFffU3""˝˘ #35fgâöö™˝´ª´ª´ˆª´Òªºªº¯ªº˛ªºªº˘ªàÛÀª˝Àª˜ÀªflÀªÀÀ∫®ááàòòààwááààòò˛à ááffeeUSDTTUU˝e    UTDDCDUTDD˛C3CCDCD˝TD˛T˝UT¸UVfvvgwàáwwàueeDC"2Ù!""#C3Efàô™∫∫˚ªÀª˘ÀªªÀª◊Àꪺ˛ªºªºªºªªºÁªº˛ªº˛ª
  1216. ºªºªººªªºªº˛ªº˝ª´™àxxââàxàxàwxààâàxxwwg˛fVVEVVUEV˛fUDD433434334DC334˚34DDED˚EUUDEVUffhwgwxàuEUC3"˛"#D$fgäö™™˝´ª´º˛ªº˛ªº¸ª˛º˛ªº˙ªºªººªªº¸ªº¯ªºªºªºª‘˛ªÀ˛ª˙ÀªÀªÀ˛ªÀ˛ªÀªÀªÀ˛ªÀ˛ªÀªÀÀªªÀªÀÀªÀÀªÀªÀª˛Àª˛ÀªÀªÀ∫πòáàòâòáààòòàòààôòàá˛w
  1217. vgáwvvUeTEU˛eUeeTCD3CDDCC3D˝322"33˝C˛3CDD˛TDUV˝f
  1218. vwvàòñUTT21¯!˝"2#EBWvâ™™∫∫ª∫˝ªÀª˙Àª˙ÀªÀª˚Àª˘Àª˛ÀªÀª¸ÀªÀª¸À¬ªª´ª´˝ªº˝ª´˝ª´ªª´ª´¸ª´¸ª´˙ª´˛ª´ª´ª´ª´˛ª´¸ª´´™öôàx˝à xàâàâààxôààww˛gfggfVeDD4DDEFVfU˛D34E˛D˛4D3434433˛#"##˛3#44D4EEfgwfVwfxàvD443"¯˝"4C6fhöö™™´™´´¯ª´˛ª´˜ªºˆªº˙ªºıªŒªªÀ˛ª˚À ªªÀªÀªÀªÀªªÀ˝ª    ÀªªÀÀªÀªªÀ˝ªÀªÀªÀ¸ªÀ¯ª    Àªª∫™©òàôò˚à¸òàôàávfvwáávvUeTT3CCDCD˝CDD˝CDDTDTDD˛TC˛3CCDDCDTTDTTUeffwvwwôvààÜS4C32!˘˝!""3CFwfô™˛∫˝ªÀªªÀÀªÀ˛ªÀ˛ªÀªÀÀ˛ªÀÀª˛Àª˙ÀªÀ˛ª˙Àª˘À¬ª´˘ªºªª´ª´˙ª´¸ª´˛ª´˛ª´˛ª´¸ª´ª™™ôàxâà¯xâàxxàxwf˛g wgfEEDD34D3#3˛#33"#"˛#3##33443344EUVVU˛EUUVV˛gwggwwâwâxwS#3#""˛˛˛ "##5xfyö˛™´´ªªº˝ª´˙ª´˙ª´ª´˚ªºªª´˛ª´˚ªºˆªæ˛ªÀ˛ª¸À¸ªÀ˘ªÀÀ˙ªÀÛª∫˘ªÀªÀªª∫∫©®ààòòàáààáàááwwá˛àáw˛vfeeTT˝C22"2322˛3    2"23CC3DCD¸TDCET˛UefeeUeefwáàòvwàááw©òvd22!"" ˆ "!""!"3DgÜh©™™∫∫ª∫˝ªÀÀ¸ªÀ˜ªÀªÀªÀª˛ÀªÀÀ˜ªÀÀ˝ªÀª˛Àªª◊´ª´ª´ª´º˙ª    ´ªª´ª´ª´ª´˛ª´¸ª¸´˝ª´´˛ª´ª´ª˛´ªª´´ª´ª´´™™ôààââàwyàxx˝àgwg˛w ffgfVVUDE4433˛"˛"˚#44˛DEUEUVeDEUVfTDEEUUV˛fUUVgxfhyàwgôàvT3""˜""$VwWöö™´™¸´¸ª´´˛ª´´ª´˛ª´´˚ª´ªº˝ª´ª˛´ªª´´˛ª´˙ª´ª∑ÀÀ¸ª˘ÀªÀªÀÀ˝ªÀª˝ÀªÀ¸ª˝ÀªÀªÀªÀ¸ªÀÀªÀªÀ˚ª ∫∫óàô©òáàòàà˛ôòòáwváwvffvvffTTD˝C332!""1˛"˛2 3CDTC3DCCTDD˝TCDDUUffveUUeUfeWààòwáâ®ÜTB2!!¯ ""2!2"223˛fâ™˝∫˙ªÀ˘ª˚ÀªıÀ˝ªÀªªÒÀ¿˘ªº˚ª´˜ªº˘ª´ˆª´ª´ª´ª˛´ªª´´ªª´´™©àyôààxâààââ˛ôàxwfg˝fVVUVEU˛D43#3#˛"#˛"    ##33##3#3#˛3#3#44DDE¸D'EEUfhààwfgxàvDC"""#""#""˛#FeUyö´™´´˛ª´˛ª˛´ª´ª´˝ªº˛ªºÛª´ª´ª´Òª¬˙ª˛Àª˝ÀªªÀªÀªÀ∫˛ª˝ÀªÀ˝ª∫ªª˛À˘ª ıª*∫∫®àô©òáàòààôô©òôôòáÜUvfvveTTDDCC3DDC33232!˛!""2"2˝3C233DD˝TC3C˝DCDTTUwávx©óvfàááfSC2!! !!˛ !""3˛23"2"32Dwegô™™∫∫Òª˝ÀªÀª˚Àªª¸À˛ªÀ˛ªÀªˆÀªÀπªª´ª´Ùª´ˆª´ª´ª˛´¸ª´ª´ª˛´ª´´ªª´´˛ª¸´©àâôàwx˛àâô˛âôôàxweVVffVUDD43ED3#4˝3˝"˛"##"#˝3#4EEDEVV˛U*EDEUUDDEEgxxwgwffgxwwUC3""$˝# ""#3#4WvWäö™™˚´ª´ª¸´Íª´˛ª´˛ª´Ùª◊ÀªªÀÀª˛Àª˛ÀªÀªÀªªÀÀ˛ªÀª˛À¯ª˚ÀªªÀ¸ªÀ¸ªÀªª∫ªª®àò˛àò˝ô©òá¸àávfvfgveTUTTEe¸TCC3C33˚2"2˝3C˛3DEeUd˝UTCDTCUVáwxáveefwàÜveS32!!˛!
  1219. "2"!2!"˛3¸23CCEwvâ™˝∫¸ªÀªª∫ª∫˙ªÀÀª˛Àª˛ÀªªÀÀªÀªÀªªÀªªÀÀªª˛Àª˛Àª˛Àª∞‡ª˛´ª´˛ª´¯ª´¸ª´ª˝´™òxàwààâõôö™ââ˚àxvfgfgww˝U EUUEEUD43##33˛#"#"#3#"#˛".33#33#34ED44EC44EWwwgffUVVgwfUFC3#""#"#"˛"#3#3"3##˛4DVxXö´´ö˝´ ª´ªª´´ª´´ªª´Ôªº´ª´Ûªº¸ªœ˙ªÀªÀªÀª˛ÀªÀªÀªÀ¸ªÀ˛ªÀªª∫ªªÀıª∫¯ª˛∫(πòàòáàà™ª™™©ôôòàòààòòàóvvffvvfveeUUTUUTC3˛23DTC˛233˝2˛3C23˚23C3C3UDfvweUfUevfwvUVR3C2˛""2322322"223C3C33C3CDCDDwuâ™∫ô˛∫ª∫ªªÀˆªÀªÀªÀ˛ªÀˆªÀ˛ªÀªÀªÀªÀªÀ˛ªÀªÀ‰˛´ª´ª´˛ª´ˆª ´ª´ª´ª´ª´ª´ª˛´ª´˛ª´ª´ª˛´ª´˛ª´ª´ª˝´™™àâà˛âö©àâàxàxx˛àxâôâôàwggwggfEEUEUED43#˛"
  1220. ##3433#"#3#˛3,##"##4DD3#3#$DETEfgfUEDDVfgwfUEC#4C"#""#3#3#˛3"#"3˛43#34D˛4DFuXö©y™¸´ªª˛´ª´ª´˙ª´¸ª´ª´˛ª´ª´˛ª´˛ª´˘ª´ªª´ª¢ÛªÀªÀªÀÀªªÀ€ª™∫©òòàòô™©ávxòwáwáàòòàô∫©™©©Ü˝wveT˛UeU˛TC32!"¸24CC¸32"3DTCB˛3TTeCfvvTUTTDVfwvuUDB33D23232˛3 4DC4C2323DDT˛CDTDDTDUwVô©âª∫∫ÚªÀÀ˪ÀÀªÀÀªÀÀ¸ª‰˛ª´˛ª´˛ª´ª´ª´˝ªº˝ª´ª´˛ª´ª´ª´˛ª´˛ª´ª´ª´ª˛´Cª´ª´ª´ª´ª´™âôàââö™áffgxwxwgxàxxâöö™ôôàwwggfVUDEEVVUUED3#3""""˛#
  1221. "##$33##43˛D$VUEDD4EEUVgfdF3"##4C334˝34ED4D3##$44ED44DE˛D4DFeyòä˚´ª´ª´ª´˛ª´ˆª´˛ª´˛ª´˛ª´˛ª´˚ªº˙ªß˙ªÀ¸ªÀÀ˝ª˛ÀªªÀÚªÀÓª ∫ª©âòàô™πòwv¸wáwáwàòò˝™©òòáv˛f    eTUTDUeeTT˛C3DC3˛2""!˛"!2322"22˝CD23DCDTB4UeegvvdfC1"33D3DDC3˛CDTCDDC23˛DTDTTUTDCCDUuhà™˝∫ÿªÀ¸ªÀÀªÀ˛ªÔ    ´ª´´ªª´ª´ª˛´¸ª´ª´¸ª´ª´ª´˛ª˛´ª´´ªª˛´ª˛´ª´´ªª˛´ª˛´™ôâàâö´ààxwwxàwwxgxxyâàâôâôö˛à    wfVggfUEDD¸E
  1222. DD4DD343433˛#4"##"""#33#443#43433#4UVfgffUUE2#4DEC4DE44DD4ED4DD23˛4D4EDEUDD34EgWhö™´™˝´ª¸´ª˛´ª˛´ª˛´ª˛´ª˛´ª˛´ª˛´
  1223. ª´ª´ª´ª´ªª´˝ª´ªÆ˝ªÀª˛À˛ªÀ˝ªÀ˝ª˝ÀÒªÀ¯ªÀ˙ª∫™òâô™ªπààááwwáwáwá˛àô©®òô˛©ô©òávfvvfeeUTTUTUTTDT˝C3D3˛C˝3:1!""3323DC2CC3C334EfwwvefUTT2CDUUd4UUTDUTTUdDUTC3DTDC4UTUUT˛CDgey™˚∫€ªÀ˙ªÀªÀÀˇªæˆª´˛ª´ª´˙ª˚´ªª¸´ª´ª´ª¸´ª´ª´ª´ª´ª˛´™ôàâö™ªòx˝àxxàà˛x˝â ™àä™öôôâàwwg˛fV˛U˛EDED44˛3##˛3(#""""#3#442#3433434EgfgeVUEUD3C4EUU4˛U
  1224. DDEDEUDED3$˝DEUUEET4434EUyö´™™Ê´ªˆ´ª´˛ª´ª´´˚ª´—¸ªÀªÀªÀ˛ª
  1225. ÀÀªÀª∫ªªÀªÀ˛ªÀ˛ªÀÁª ∫∫™®àô™ª∫òàà˛òààôòàááààòôôòâôô˛òá˛àwvvfeU˛TDCDD˛C332˛3J22"!!"!!#32DC223CC2323DUfUUffdDeDCTDDeUTUUeeDUTUUeTTS4TUTDTUeUTeTDCCDfxô™˚∫ª∫ª∫ª∫ª∫ª∫ª∫ª∫ˆª∫ª∫ª∫ª∫˚ª˛À˛ªÀ˛ªÀˇª»Òª¸´    ª´´ª´´ª´ª´˛ª˛´ª´˝ª´´ªª´´ª´˛ª´ª˛´™™àâö™´©àâàâòâà˛âàxwfxààâôòâôôòàââààwwffVfUUEDED˛4D433#4D4D3"""˝#3"$DD˛3#34ED4EfUD4ED3EDDUVTE˛U    DUTEEVUDD4˝EDE˝U˛D    33Fhâö™™´™˘´ª¯´ªÔ´ªª´¸ª´ªª´ªª´ª»˛ªıÀ¯ªÀ˚ªÀÀªÀ¸ªÀªÀ˛ªÀªªÀ¸ªÀ˛ª
  1226. ∫∫à™™∫ª®àôô˝òàò˛ôòáwàⲙ©©™™©ô©òòàáávvffee˛T˝DTDCCDCDC3""2"!"3C23323˛DC33CCDDCDUeeTTVdCVeTefeU˝eUeU˛eTTD˝UT˛U
  1227. eUTCDCCEgôô˛™˝∫˛ª∫¸ª∫ª∫ªªÀ˝ª∫˙ª∫˚ª˘Àª¸ÀªÀ ˜ªº¸ª    ´ªª´ª´ª´ª´˝ª´˝ª´˙ª´˙ª´˝ª˛´™ôâöõ´™àâöôôààx˛àxââàwxâ´´™™öö™™ôâ˛àxw˝fV˛UED˛4E˛D443˛" #""#"##""$D˛3#343445EVVfEVVeDVUEVgfU˝VUVUUVVUEDFUVUEEUUVUUD4D34Xöö¸™˚´˛ª´ª˝´ªª´˛ª´˛ª´ª˛´ª˝´ªΔªÀªÀªª˘À¸ª∫ªª∫Úª∫˘ªÀªÀ˛ªÀªª˛∫πò™∫∫πôò™™©ô©ò¸à©ô©®wàà™©™™©©ôôòò˛áwvwvef˛eUeUeU˝TDTC22322!"22"2"23DCC˛3˛C#DTDUffeUegfTfeUVvvevefUfVffeUeUTDeUe˝U˛eTCDC3Wô©˛™˝∫¸ªÀ∫ª˝∫Ôª∫˛ªÀÀª˛ÀªÀª˛ÀªÀªÀ‘Òª´ª˛´ ª´ª´ª´ª´ª´ª´ª˛´ª˛´ª´ª´˛ª´¸ª˝´ ™ôâ´™™ôâäö©ô˛âààâ˛ö™ôâàwxààâö™ôôâôòàwwg˛wggf˝VggwfVUEUD4#33#"##˛"#33433#˝34D4DUVVDVVgfUffUVggVgfVVfUfVV˛UEDFUVUUEUVfUUC4D36âôöö™™´™¸´ªª˙´ª´ª´ª´ª˛´˛ª´ª´ª´ª´Úª´ªΩ˝ªÀª˙ÀªÀÔª∫ıªÀÀªªÀªÀ˝ª∫πò™™ª©òô©©®àôòàô©©™™∫π˛™©˛ò˛àò˛ô©òòàá˛wvvefvgw˛vffvfeTTDT3C33C2!˛3C¸3 C3C3CC4UfeTEe˛fevwff˛vfvU˚feUUTUEeU˛eUffUUSDDC4x™©™™∫™∫∫ª∫˙ª∫¸ªÀÀ˙ªÀ¯ªÀªªıÀªÃª´¸ª´¯ª ´ª´ª´ª´ª´ª´ªˆ´ª´ª´ª´ª´¸ª´ª´ª™©äöö´ôââö©ââôôöö™ö˛™´´™™ôô˛àââööôâöôâààwwffUVgwggUUEVVfVVD4D˛3##2˛3433#334¸#33EUE4EUfUfEfggffg˛fU˛VUfeVUUDD4EEUVVUEVeETDD34Wâ˛ö™™˚´ª´ª´ª´˛ª´ª´˛ª˛´˙ª´Ìª¶¸ªÀªÀª¸ÀÒª∫ª∫ª∫Ϫ∫∫˛©™∫©òô™πô¯™©™©©ôô˛òô™™˛∫©ô©©òòávw˛vfeUUTTUefeUTTDDC33DC23C3DDC˝3¸2˛3 DDCEUffUvUvfw˝v#fvufefeefeeUUDCDUeefeUeeTTDDC3Fà©©∫™˝∫›ª˛À    ªÀªÀªªÀÀªªÿ
  1228. ´ª´ª´ªªºªªº˛ª´ª¸´ª¸´ª˙´ª¯´ª´˛ª´ª¸´™ôöö´™òàö™öö™ö´™™ö™ô™ö˛™¸ö´´˛™ö™ö™ö©wg˛wgfUUVUU˛V
  1229. UUVUD43#34D¸3
  1230. 4D4##""""˛#433$EUVfVfUgVhvg˙fVfUV˛UEDD$EEUUV˝U EEDD#%höö™ö™™˚´ª˛´ª´ª´ª´ª´ª´ª´ª´ª´˛ª´ª´ª´ª´ª´¯ª´ª´ªΩÀª˛Àª˙Àª˝∫ª∫˜ªÀÀªÀÀ˝ª∫ª™™©™™©òô™©™™∫ª˛∫™™∫™∫˝ª∫∫ªÀ∫˛™´ªª∫ª∫ò˝àáwvf˛effe˛f
  1231. eUTD3DUDCCD¸C22"2˛"!"22˛32DUUfvfvewfxÜwvfvvfv˛feTUeUUSTCDUeef˛eUU˛T23gô˛™∫™∫∫˜ªÀıªÀÙª¸ÀªÀÀªªÀª–˘ªºªº˛ª´´ª´¸ª´ª´ªÙ´ª´ª´ª´˙ª˛´
  1232. ™™ôö´™ôâö™ô˝´™´˝™´™´´ªª´ª´ª®ä™´ªª´ª™ôâöââàxwwgfV˝f    gfVUVD34ED˝3##"#"#"#"#"#"##3#EDFfUVwU˛g&ágwfgfVgfVfeUDEUEDED4DUUVUVfDEUUD33Gyöö˛™¸´ª´ª´ª´¸ª´˛ª´ª´ª´¸ª´˛ª˛´˜ª´´ª´≈˙ª˚Àª∫ª∫˝ªÀ∫˙ª˛∫ª˛∫ª∫˙ªÀÀ˝ªÀ˛ª∫™ô™™∫®ô™©´Àª∫∫™∫¸™ªªÀÀª˛À∫©∫©˝ªπàô™∫˛©òáwwv˛f˛v fefTCCDC3DC3C¸23˝2:32322""23DUTUfUfvffvgáwwugvefvVveeS4UUTDTDCVUUeUeeUeUTC3Fwô¸™∫ÛªÀˆªÀ¯ªÀª˛ÀªÀ˛ªÀˇª√ªª´˚ªº˝ª˛´ª´˙ª´ªÙ´ª˛´¯ª˛´ôâö™™òä™õöª∫™ö™™˛ö´ªººÀ´˛º˛ª™õ˝´™ö´´˛™ôàwwg˚fVUDD3343#˛433#˛3##"##"˛#"""##EDEVUEfwffVgxgwvWweVwVfVU˝ED4D4CFUEUUVVEUUEC45fiöö˝™Û´˝ª¸´ª´ª´´ª˛´˛ª´˙ª´˛ª´´ÀÀªªÀÀª˙Àªª∫˛ªÀÀªÀªÀ˚ª˛∫ª∫ª∫¯ªÀÀª˛À ªª∫ª®ö™π©ô™™˛ªπ©©ô™∫™ªÃÀÃÀÀªÃÀÀ∫ªÀ∫ªÀ∫¸ª∫∫©ò˝àáw˛feTUTTD˝C3CC˝D˝C˚2"2˛"223D˝UVewvvegwwàÜfwuegvffe˛T DTDDCDEeUeeUfefUUTCTfwö™™∫™∫∫ª∫ª∫¯ª˛À˘ªÀ˙ªÀÀª˘ÀªÀªª∫ƒ¸ª´ªºªªºªª¸´¸ª´ª´˛ª¯´ª´ª´¯ª´ª´ª´´ôööôâ™ö´´ºª™™öö˛´¨˝ºª˝ºªº˛´ª´¸ª ´™ôââôâàwwgf˝UDD43343˛4˝D44˝3##˙"+#34EEDEVegfgeWgwhvWgvEVfVffUDEDD4D3$DUUVUEV¸UC5Fwyöö´™˘´ª´˛ª´¸ª´´˚ª´ª´ıªºªª´´˛ª ˛ªÀ˛ª¸Àªª˛∫ªªÀ˛ªÀ˚ª∫ª¸∫˘ªÀªÀ˘ª π©™™®ô©™ªÀÀ∫™˛∫ ™∫ªÃÀÃÀÀªÃÀÀª˛ÀªªÀªª˛À∫∫π©ô©©ôòávvfeeTD˛C33D3˛DTDDCC˝3C˛2˝"!!""23DDUDUVefvwvfwÜwÜfvwUUvffvTUDC˛DC3TUeUeT˛UTUeS4fxàô˛™˛∫˙ªÀÀͪÀªÀªÀªÀªÀ˛ªÀˇª‘˙ªºªº˛ª´™˝´˛ª´¸ª´´™˚´ª´´ªª´ª´ª´ª´ª´ªª˛´©ö™´™ôä´ªºª´™´™˛´¸ºª˝º˝ª´˛ºªº˛ª™öö™ôâàw˛fVVED˛433434˝D4D44¸3#"""¸"##4D4EVVffxvVgwgfVvgeUVUefUE˛D
  1233. 44C#EEUEUEE¸U    D$Vhàyöö™™˘´ª´ª´ª´˝ª´´ª´˛ª´ª´ª´ª´˛ª´ˆª´ªŒªª˛Àª˙À˛∫˛ª˙À˛ª˛∫ª∫ª∫˝ªÀÀÙª∫©™ªÀª∫∫ªÀÀ∫™™∫˝ªÃÀ¸ÃÀÃÀÃÀÀªÀÀÃÀÀªÀÀ∫©˛™©òàá˛vfeTTUTDDTCDTUDUT˛DC33C33˛2˘"23˛D$UffufáÖfvwwáewftUUeffuTTDTS4CCDTUeeUU˛eUUTCVxàòö™™∫∫ª∫˝ªÀªªÀÀ˝ªÀ¯ªÀªªÀª∫˝ª˝Àª˛ÀªÀ˛ªΔ˜ªºªª´™™´´ˆª¸´ª˛´¸ª´˛ª´ªª´ªª´´™öö´ªª´™ªºªöö´´º™ªıºªª˚ºª´´™ö™ööôààwggffUEEUDEUDD˛EDEDD44˛3433˝""˛"##$4EEVffVxvV˛gwfgeeEEeVVeDD4DD˛34TEVUDUUVUEUE3Fhyôö˝™˝´ª´˙ª´˛ª´˛ª´˚ªº´˛ª´ˆª´ˇª≈ªÀª˛Àª¸À¸∫ªªÀªÀªÀªÀ˝ª∫∫˘ªÀÀ˝ª∫˙ª∫™™´˝ª
  1234. ∫ÃÀ ©™ªÃªªÀ˛ÃÀÃÀÃ˛ÀøÀÃ˝À∫˛™∫™©©ówáwvffeUTTDT˝U¸TD˛C˝3˛2"!"!"˛!"223CTUUfeewvfwv˝fueUTefeeTDDTCC˛3TUeeTUUVeUTUBEgâô¸™∫ª∫˚ªÀıªÀıª˛ÀªÀªÀªÀ˝ª”Ùª´™´´ª´˙ª´ª™˝´˛ª´ª´˛ª´ª´ª˛´ª˛´ª™™ö˛´
  1235. º∫¨ºª™öõºº™˛ºÃˆºª˝ºªª™ö´´™ö™ôàwxww˝fUEEUUVT˛EDDED44˝3##˛"˛˛"#3DEE˛Vg˛fgfVgVgUUTEVUUEDC5˛3#3EEVUUEUVUUEEC5Wââöö™™´™˚´ª´ª´ª˛´ª´ª´ª´˛ª´˛ª´ª´˛ª´ˆª´ªΩ˛ªÀÀªª˚À∫ª∫˝ªÀª˛À˝ª˛∫˘ªÀªÀ˜ª∫∫©™ªÀªÀπÃÀªπ∫ªÀ˛ªÀÃÀÃÀÀÃ˛ÀÃ˛ÀÃÀÀ∫∫™™∫˛ª∫∫™®àòàávwvfefefeff˛U¸T˛C˝3
  1236. 22"!"!!"!!˛!"33DDUUeegfvfvfvgufu˝U deTTC4SC332ED˛eU˝eUUSDgâ©˝™∫∫˘ªÀ˪˝ÀªÀ˚ª∫’˜ªºªª˛´
  1237. ª´ª´ºªºªª´ª¸´ª´ª˛´ª´˛ª´ª˛´ª´ªª´´™öõ´ªº´™ºªª™ª´ª´Ôºª¸öª´´™™öôààwxggffVfe˛V˛UEE˝D44˛3˝#"˛#3DDEEUUWWvVfUffeVf˛EUUEDTC4D˛3#$D˛UEeVU˛ET4Wx˝ö    ™™´´õ´ª´ª´˛ª´ª´˛ª´ª´ª´ª´ª´ª´ª´ª´ª´˝ªº˘ª´®˛ª¯Àªª∫˝ª˚Àª∫ª˛∫˜ªÀÀ¯ª∫∫©™™ªÀÀ™¸ª ªª˝ÀÃÚÀ˛ª˛™ª∫∫©ôôòá˝wv˚feeUU˝TDT˝C33˛2""!!!!!""3DTT˛UegveveefuffUTeTU˛TD3TC˝3UUeUTeVUeUeTCWàò⩲™∫ª∫·ªÀª˛Àª˛À˝ª“´˚ªºª˛ºªª´ª´´ªº˛ªºª˜´ª˛´˝ª¯´™™ô™ö´ªª´º´´ª´ª´ªª´ººÃ˝ºªºª˛ºª˛º    ªºªª´ª´ª™™˛âà˛wgg˝fVfV˝UEE˝D34˝3#""!˝#4DDEEUUggUWfeVfWvU˛DE˛DEC33##5EUFUVVUUFUECFxxâö™™˜´˛ª˛´ª˛´ª´˛ª´ª´ª´ª¸´º˘ª´ª´´ßÛÀ˝ª˙Àªª∫ª∫∫˚ª∫˛ªÀÀ¯ª ∫∫ö∫ªªÀÀÃÀªª˛À    ªÀÀªÀÃÀÃÀÃÛÀªÀ˛ª∫©©ô©ò˛á˝vfvfvf˛eU˛TDTTDD˛C˝2˛!"!!¸!"3DDTTUUTfwuffvefewdT˛DTDUDCETCD33CTDVeU˛e    UUESVwwô™™˛∫ϪÀˆª˜À˝ª€ªªºªº˛ªºªºªºªºª´˜ª¸´˛ª¸´ºªª´ª˛´ª˝´™™õ˛ºªºª´ª˛ºªºªººÃ˚ºª˛ºª˛ºªºº´ªºª˛´    öôâôxxwwfg˝fVfV˝UE¸D4D˛3##""˝˛#4˛D/EUDVgfUffeVVfUD4EDD4ED34D34##4EDEfUfUVUUES6wgâöö˚´ª´˙ª´˛ª´ª´ª´ª´ª´ª´ª´ª´ª´˝ªºªº˝ª´ª´≈ÀÀªÙÀªÀª˚Àªª∫π∫∫ªª˛Àªª∫ªªÀ˝ª∫¸ª∫™∫ªÚÀË‹ÀÃÙÀ ªÀÀ˛∫™™©ôòàáww˛vfv˝fee˛UTTDTT˛C    32322""!!˛!!"23˝DUDfvvUeu˛f#veTDTSC4DTCDDC3224DTUfUfeUefTS5wvy©™˛∫ª∫˝ªÀªÀ˙ªÀ˛ªÀªÀªÀ¸ªÀªª˘ÀªÀ˝ª°ªª´Òª´˚ª˚´˝ª¸´ª˙´ºªª˛™´˘ªºº˛ªºª˝Ã˛º¯ªºª´˛ª´´˛™ôâàà˛wg˙fV˝UEE˝D44˛3#"#""˝˝#˝4EDVfgUUfVVfgfT44D44DD34DC#3#$˛DVUFeVUVTD$gvVäö™˝´ª´Ïª´Ïª»Àª˛Àª˙ÀªÀªÀªÀ˝ªÀÀ˛ª∫∫¸ª∫˛ª∫ª∫ª˛∫ª∫˝ª˛∫ª¸ÀªÃÃ˚ÀËÃÀÃÛÀª˛À˛∫™©©òòàááw˛v¸f˛eUU˝TDD˛C˛3˛2˛!˛˝!"33˝DTVfwuTvUfegveCDDCCTTC4TD3C23˛DUeTeVeVdTDgàÜä˝∫˝ªÀÀª˛Àª˛ÀªÀÀªª¸À˛ªÀÀªªˆÀªÀªÀª∞ª´ˆª´˛ª´ª´ª´˛ª´ª¸´ª´ª˙´ª˙´ª´ª™´´º˝ª˝ºª¸ºúÃ꺯ªº˚ª´™ö™˛ôàxxww˘fUV˛UEEDD44¸3    ##""˛˛##˝4-EFfVfDVUfegwfC4D33443#E433##5DD5fDUVUEU54Gààä™˚´ª´Ïª´ıªº´˚ª∑˙ªÀªÀªÀªÀÙª˝∫¸ª˙∫ª˛∫ª∫˛ª∫™ªÀª˛ÀªÃ˙ÀÃÀ‹˛Ã˛ÀªÀªÀªÀª˛À˛ªÀ∫∫π™©ôòòáàááw˛v˝f˝eUU˝T DC33C33C22"!˛˘6!"3DDCDTUeffTVUfeVàÜd3DC334B34TC3224UDDfTUfdTUDSVààô™˛∫ª∫˚ªÀÓªÀ¸ª˛ÀªÀªÀ˚ª»˛´ª´˘ª´ªª´ª˝´ªª´ª´´™´™¸´™´™´™´™´™˘´™´º´˝ª˝ºªªºªºÃÃ˛º˛ª´˛ª´¯ª ´´™öôöôàxxww˝g˝fV¸UEEDD4D˚3˛"˚/#4D34DEUVgdFFVUEhwU3D33#43#4D433"#EDDVDEfe˛EDEyàä™™˜´ª˛´ª´ª˛´ª´´˝ª
  1238. ´ª´ª´ª´ª´ª´˙ª˝´°¯ª˝ÀªÀÛª∫¸ª¸∫ª˙∫¸ª∫ªÀªÀª˛ÀÃÀ‹˛ÀÃˋøÀ˚ª˚À˛ª∫∫˛©ô˛à˛áw˛v˝f˛e˝UTTDCC3C˛32""!˜˛"3DDCDEefftVUeeUgávSDS˛3C3DD˛C23EdTVdUfvTUUTUxòâ™˝∫˙ªÀıªÀˆª˜À˝ªÃª´ˆª´ª´˛ª´˛ª´ª˙´ª˝´™´™´™˜´ª™ªª´ªºª¸ºªªº¸Ãºº˝ª´ª˛´ªªº˝ª´˛™˝ôxxàxxwgg˝fVfUV˝UEDD433#3˛#""#4434DUUVdF˝U$VxfT4D#3#3#44DC3##4UEEUEVfTEUD5Xòyö´™˝´ª´˚ª´´˛ª´ª´ª´˛ª´˙ª´ˆª´ª´¥˚ªÀÀªÀªÀª˛À¸ªÀ∫˝ª˚∫ª˜∫™˝∫˛ª∫˝ªÀªÀÀÃÀÃÀÃÀÃËËÃÃÀÀªÀ¯ªÀªÀª∫ô™©©ôôòòáààáw˝v¸fee˝UTDCC˝322"2"!ˆ!"23˛C,DUeftDefeUgvÜTCD323C23DTTC33DUUTUUfvdTUTEgôàö¸∫ÁªÀ¸ªÀª˛ÀªÀªÀ∫˛ª√´ª´ª´˛ª´ª´˙ª´˛ªÛ´™´™´¸™´™¸´™´´˝ª˝ºÃ˝º¸Ãº˝ª˛´ª˛´˚ª´™ööôâôââxàxxwg˚fVV˝UEEDD443˛#˝" ˝##˛3/4EUVeDEVeFUfgeD43##3##4EDD334EDDEUVfUD5EEVâòä™´™˚´ª˛´ª´ª´ª´ª˝´ªª´ª´¸ª´´˜ª˝´Ω˚ª˛ÀªªÀÀªÀıª∫ª∫˛ª∫ª˝∫™˝∫™˛∫ª∫ª˛∫ªÀªª˛ÃÀ‹ÀÃËËË‹ÃÀÀ˚ª∫ªªÀªÀÀªªÀª∫∫©©˛ôòáà˛á˝v˝f
  1239. eeUeUUTTDDC˛3¸2"!!˙˛!"3˝C1UUfedEfvUUffuT3C"#C"33EdDCCDDTUDUVveT4UTfâ®â™™ª∫ª∫ȪÀÀªÀ˝ª˙À¸ª¬´´ª´ª´˙ª´¸ª´ª´ª´ªı´™˛´™´˛™˚´™´˛ª¸ºÃ˝º¸Ãºº˛ª˘´˚ª´™™ô˝âàxxàxxw˚fVV˝UEED4D˛3˛#    "#"˛˛"#4334EEVUe4efEEVVfD33##3"##5UD˝3EEDEVfUE4UDVxôxö˙´ª´ª´ª˛´ª´ª˛´ª´ª´ª´ª´¸ª´ˆª´ª´∂ˆªÀ˜ª∫˛ª∫ª˛∫ª∫ª˝∫™∫˛™∫™∫∫ª∫ªª∫∫ªªÀªÀÀ˛ÃÀ˝Ã‹ÃËÃÀÀ˝ª˛∫ªª∫ªªÀ¸ª∫™©©òôàò˛àáw˛v˚fe¸UTDCC˛3˝2"!!ˆ!!2˝3DTUdfCuf˛U"ffdC3"3C!#3CeTCC3CETdUfveTCUTUàôò™™˝∫˝ª∫˛ª∫ÁªÀªÀ˚ªƒ¸´ª´ª´ª´ª´˛ª¸´ªÛ´™´˝™ö™™´™¸´™´´˚ºúúº¸Ãºº˛ª´´™˝´ ª´´ª´´ª´´™ööô¸àxà˛w˚f VVUUEUEEDD44˛3#"#""˛˛˜5"#33#4DEUVCVVEEUVVeC#!"3""3EED3435UUEVfUEC5DEyâòö™™˝´ª˛´ªı´ªª´ª˛´ª´ª˛´ª´˛ª´ª˚´üʪ∫ªª∫∫ª¯∫™∫™™∫∫˛ª˛∫ªÀÃÀÀÃË˝Ã‹Ã˛‹ÀÃÀÀªª˝∫˜ª∫∫™©˝òàòààáávw˝v˛feT˝UTDDCC3C2322""!!˛ˆ!"˝3
  1240. DDTTfcWUdUu˛eT˛232"23EUTDDCDUeTUveTSDTUyô©™˛∫„ªÀ˘ªÀÀ¸ª∂˝´ªª´´˙ª´ª´ª´ª´ªı´™´˛™´˙™˚´ª¸ºÃúº˙úºªª˝´™˚´˛ª˛´™ö©ôâ˝àxàwwgg˚f    VVEUUEUUDD˛343#"""˝"˛#/44EDVT6VUDfFUVT2""#"#$4UT44DDEUUEfEET5DDhâö™™´™Ì´ª¯´ª´ª´ª´˙ª˛´Õªª∫˛ªÀªªÀªÀªÀ˛ªÀ∫ªªÀ∫ª∫ª˛∫ªˆ∫™™∫™˝∫ª˛∫ªª˝À˛ÃÀÃÃ˛‹Ã‹Ã˛Àªª˙∫ªªÀª∫ªª∫∫™™©©òò˛à˛áwwvvfvffefeeUU¸TCC3C322˝"!˛ˆ3!"3223CDTUeDfeDVdeedB223B""2CUTDSDCDeTDVdDTETDWô©™˙∫ªª∫∫ªª˛∫ª∫˙ª∫∫ªª∫Ùª∫˛ª∫ª¨¸´˜ª´´ª´ª´ª˘´™´˜™ö¸™˝´™´´˛ºÃÃ˝º˚Ã˛ºª´´™´´™™˛´˛ª´´ª´™öö˛ô˛àxx˝wg˛fVfVVUVUEUEDED4¸3#"""!˛˜˝#-34DFVCVeD5eEUE32#2""35U4D5D4EEDFe4U4DDFâöö™™ˆ´™Ï´ªª´´˛ª˙´Ω˚ªÀÀªÀª˝ÀÛª∫∫™∫™™˛∫˜™˝∫    ªªÀÀÃÀ‹‹ÃÀ˛Ã‹‹Ã‹˛ÃÀªª˙∫ªÀªªÀÀ˛ª∫™©©ôôòòààááwwvw˛vfvv˛e˝UTT˛DC˛322""˛!ı1"23233DDUedEuTTeTVdC2"23"!235T3TDSDUUDUeTUTTDEâô˛™∫™∫ª¸∫ª∫ª∫ª∫ªÀª˝ÀªÀ˝ª˛∫«´´ª´´Ôª´ª˙´™™´˙™´¸™ ´™´´™´ºªººÃÃ˝º˙ú˛ª´´™´´™´´˛ªºªª´˛™ö™ôâààxàxxwwfg˚fVV˝UEE˛D4˝3    "#""˛˛7#"#344EUU4fTDVEUU4""#"$4D#EDD34UDEUDUTDEExôöö˝™Ò´ª´ª´ª˛´ª´˛ª´˛ª´˛ª´ª´ª˛´≥˙ªÀª˛À¯ªÀ˘ª˘∫˛™∫™∫™∫™˚∫ª˛À¸ÃÀ˝Ã‹ÃÃ˛Àª∫ª¸∫ª∫ªªÀªÀªª∫∫©ô©òààòà˛áww¸v˝fee˛U˛T˛D˛C˝2˝!Ú"˛2+33DEeeDfuDUUeUT1"2"2""$CT3DDTCDUTDeTUTTEDxô©˝™    ∫™ªª∫∫ª∫ª∫Úª∫˛ªÀªªÀÀªªÀ˝ª∫˛ª≤˛´ª´ˆª´ª˛´ª˛´ª´ª˝´™´™´¸™´˚™˝´™´˛ºÃøº¸Ã˛ºªª¯´˙ª´™öôöâ˝à˛xwwg˛fgfVf˛V˝U ED4D4433##""˝Û˛"#34DVVDEf4EEUUD2#"#C44˛D44ED4UEDED5Dhâôö™´™´™´´ªÏ´ª´ª´¸ª´˛ª´ª˝´±˚ªÀª¸ÀªÀÚª∫ªª∫ª∫∫ªÀÀÃ˸ËË˝ÃÀÀ∫ª∫ª∫˙ª
  1241. ÀÀªÀª∫∫™©©ô˛ò
  1242. àáààááwwvww˛vfefeUeUU˛T˛DC33˛2!!˝Ù""23C3DUfSEgSTTUfTB"˛2"1"S4CCTDDCUTCUTTETEThòô™™¸∫˛ª∫˛ª∫ˆª∫˚ªÀªÀÀªÀ˜ªøª´ª´´˘ª´¸ª´˛ª´¸ª˘´˛™˛´™´™´™˛´    ™´ªªººÃÃºÃ˛º˙êª˙´ª˛´˚ª´™™ôöââ˝à˛xw˚gff˝VUVUUE˝D4˛3#""˛˛""#334EVT5WTDEEFUC"#˝"D$4D54D4ED35EUED4TXâôö™™´™Ô´ª´ª´ª˛´˛ª´˙ª´˛ª˛´º∫˘ª˛ÀªÀ˛ªÀıª˛∫ª˝∫™˜∫ª˛∫ªÀÃË˝ÃÀÃ˝‹ËÀÀªª˛∫ª∫¸ª˝Àªª∫∫™©˛ôòàòààááw˝vw˛v˝f˛eUTTDTTDC3322"2"!!Ò!""223DUfdDFuDDTTeT2"2"2""44˛DCDCDDCDTUDTCdWôô˚™∫∫ª˛∫ª∫˛ª∫˙ª∫∫ªª∫˘ªÀ˙ª∫∫ªÆ¸´ª´˛ª´¸ª´ª˛´ª´ª´ª´ª´ª˙´˝™´™´™¸´™´´ºªººÃ¸º˘Ãº¯´˘ª´´™ö˛ô˝à˛xww˚g˛f˚V¸E
  1243. DD33#"#""˛˛ˆ5""##4EVT4EfE4DEET3#"""$3DEDD4C5DD4DEDD4UGâôöö™™´™Ò´ª´ª˙´ª´´˝ª´ª´ª´ª˝´æ˙ªÀÀªªÀÀªÀªªÀªªÀÛª˙∫ª˛∫ª∫ª˛∫ªª˛ÃÀÃÃÀÀÃÃ˛‹ËÃÃÀ∫∫ª˛∫ª∫ªªÀª˝À    ª∫ª∫©©ôôòò¸à    wwvwvwvwvv˚feTUTTUTTC32322""¸!Û˛"334DUeCEg˛TEUdC˛2""23BETTDCCETTD˛TD3eFâô©˛™¸∫ª˛∫ª∫ª∫¯ª∫˘ªÀªªÀ˙ª˛∫æ´´ª´ª´ª´˘ª    ´´ª´ª´ª´ª´˛ª˛´ª¸´™˚´™˘´ººÃ˚º˙úª˚´ª˛´˙ª´´™™©ôâ˛à˛xàww˛gwgg˝fVfVfVUEUDEDD433##""˛˛˛˛˛##44UU4EGUDE4DU3˛#""##C4DD4C44DD4DEED4UFxâöö˛™Á´ª´ª´˛ª´ª˛´ª¸´™∫˘ªÀªÀÔª∫ª∫ªÓ∫ªÀ¸ÃÀÃÃ‹Ã˛‹ÃÃÀÀ˛∫ª∫∫˙ª˛Àªª∫™©©òôòòàááàá˛wvww˛v¸f efeUUTTDTTDC˛322!"˝!Ú˛"23DUeSTUeTDTTES23˛2C3DTCC4CTDTDUTDDTEàô©©™™∫™˘∫ª˛∫˛ª∫˛ª∫ª∫ª∫Úª˝∫≥¸´ª´˛ª´ªª´ªª´ª˛´ª˛´ª˛´ª´ª˚´™˛´™¸´¸™ªª˙º˚úúª¯´ª´¸ª    ´´™™öôàâàà˝xwxww˝gffg˛fVUVV˛UEED4D˛3#˛"˛ı3""#4EVSDEUTEDEDD"32"##33$DD3D44D4DDED44U5xyôö™ö™™¸´™È´ªı´±¯ª˝ÀªÀ̪∫ª˛∫ªª∫∫ª˛∫ª˛∫ªªÀÀÃÀ¸Ã˝‹ËÃÀÀª˛∫˙ª˝À˛ª∫™∫©˝òàáà˛á˚w˛vffvfefee˝UTTD˛C3˛2""!Ú"!""33Dft4ETeE˛TDC3C3#3CC4TDCDC˛D
  1244. SDDTCTfDxòô˛™˛∫ª˛∫ª˛∫ª∫¯ª∫ª∫Ùª∫ª∫ª∫ª∫Æ´´ª´˛ª´ˆª´˛ª´ª´ª´ª˛´ªÒ´™´™´ª˚ºúº˙úª˘´¯ª´´™™ôâàâà¸x˛wggwwg˚fVV˝U    EEDED343##˛"˝+#3EUf4DDVDTED43#4#"#34$D4D534D4DD4D3EVDhâôöö˝™È´    ª´ª´ª´ª´ªª˘´∞ªª∫˚ªÀªÀÔª∫˛ª˛∫ª∫˛ªˆ∫ªÀÃÀÃÀ˝Ã¸‹ÃÃÀª˛∫ª∫˚ªÀª˛Àª˛∫©ô˛òàà¸áwwv˛w˚v ffeeUeUUTUTT˛C˛2"2˝!Ù˛!"3DUeCTTEeTDTT233223CS3DC˝DT3˛DTCUeTxôô©˝™¯∫ªª∫˛ª∫˛ª¸∫ıª∫ªª∫ª∫∫Ƹ´ª˛´˙ª¸´ª˛´ª´ª´ªˆ´ª´´™´™˛´˛™´¯º˙ê˚´ª˛´˙ª´´™™ôââ˝à wwxwwgwgwgwgg˚fV¸UDEDD˛3#˛"˝˝ˆ˛ #4EVC4EEeE4UE˝3"4D344˛D4D34˛DC5UDiââôöö™™´™˛´™Ú´™˚´ª´ª˛´ª˙´™£¯ª˝ÀªÀʪ˝∫ª¸∫™ªÀÃÃÀ¸Ã˝‹    Ã‹ÀÀªª∫ªª∫˛ª∫ªªÀÀªÀª∫∫™©©ôôòààò˝á˙wá˛vwvvffe˝U˛TC3CC22"¸! Ù!˛"2DUfcDUTUeSUTS˝3"DDCD4DTCDTCDCDTSDUehôô©˛™ˆ∫ªª∫¸ª¸∫Ùª˛∫ª∫ª∫µ˝´ª´ª´¸ª´¸ª´ª´ª´ª´˛ª˛´ª´ªı´™´˛™´´¯º˚úª˙´ª˛´˙ª ™™öôââààxàwx˝w¸gwggfg˝fV˝UE¸D3##""˛¸˛˛˛˛("4EVdEET5UEED33#33"4DC4$DD44D34D4DD4UUXââ˛ö˛™´™˛´™Ú´™´´ª˙´ª¯´»∫ª∫˘ªÀ˜ª∫˙ª∫ª∫ª˛∫˛ª∫ª˝∫™˝∫™™ªÀÃ˛À˝Ã‹ÃË‹ÃÃÀ˛∫ªª∫∫ã˛ªÀÀªªÀÀ∫∫™™©ôòòáààá˝wv˛wv˛w˛vwfvvfeeUU˛TDCC2322˛"!!Ú!"23UUeEUUTU˛TC33C323TT43DTDCD˛CDDC4UUWòôô™©™™∫™™ˆ∫ª∫ª∫ª¸∫
  1245. ª∫∫ªª∫ª∫∫ªª˘∫™ˆ´ª´ª´ª˛´ª¯´ªı´™´¯™´¯º¸Ãººª˙´õ˛´ªª´´ªª˝™˛ôà˛x wwggwgwwggwgw˝g˝fV˛UEEDD˛3#˛"˛Û"#5Fe6VUDETDED##433#5E434˛D443˛4 33EUWâàâöö™ö˘™ˆ´™´™™¸´ª˘´™˛´™´Øª∫ª∫ª∫Ùª∫˛ª∫¸ª˛∫ª˛∫ª˙∫ª˘∫ªÀÀÃÀ¸Ã˝‹ÃÃÀÀ¸∫ª˛∫ªª¸À˛∫™©©ôôòà˛á˝w˛á˚wvw˝vff˛e˛TCDCC˝2˚!Ú""34UfU˛eTUSEeC34CC33USC3UTUCDC˛DCCDUgôáô©˝™∫™ˆ∫ªª∫ª¯∫ª∫¸ª∫ª¸∫ª∫ü˜´ª¸´ª˙´ªÎ´™˛´™´´˘º˙úª˜´˚ª˛´™™öââààxx˘wg¸wgwgg˝f˝U˛D433#˛"2"##EVTffUTET5V33$4C34EC3$˛ED4D44D33DEhâxôö™ö™™´™´™˙´™˙´™´™Ì´≥ªª∫ª∫ª∫˛ª∫˙ª    ∫∫ªª∫ª∫ªª∫˚ª∫∫ªª˛∫ª˙∫ª˛∫ªÀÃÀÀ˙Ã˛‹ÃÀ¸∫ª∫ª∫˝ªÀ˝ª∫ª∫©™ò˝àáá˚wáwáá˛wáwwvv˛fe˛U
  1246. TDD3C232"!!˝! !""3DedfveeTTDDSC4DDCDEDC3˛UTCTCCDC3DVxàâô™©˛™Ù∫ªÍ∫ª˝∫Ƹ´ª´ª´ª´ª´ª˛´ª´ª´ª¸´ª¸´ª˜´™´™˛´™´™´˘ºú¸Ãª¯´ª´ª´˝ª˛´™™öôàà˛xw˝g˛wgx˙w ggfVVUUEED4D˛3#˛"˛Ú+"#4UTFgfVUED4D4#4434DD34EDEU3D434C44Fxáyâ˛ö˙™Ù´™˛´™˙´™ˆ´§˛ª∫fiª∫ª¯∫ª∫∫ªÀÃÃÀ˛ÃÀÃÃ˝‹ÃÀ˝∫Òª∫∫©©òààáá¯w˛áwá˝wvvf˛eTT˛DC3322""!!!Ú !23DUeVvvfv˝TD3DC34TDC3VTTUCDCCTSDDVàÜâô©˝™∫™˝∫ª¸∫ª∫˛ª¯∫´∫ª∫ª∫ª∫ª˛∫ª∫ª∫¨˘´¸ª´ª´ª´ª´ª´ª´ª´ª´ª˛´ªÏ´¯º˝Ãººª¯´ªª´˙ª´´™™öàà˛xwgwwggwwg˙wggffVVUUDEDD433##"˛
  1247. ˛˛˛˛)##4DUFggfWeDDED34D43UED3FUUE4EC4EDEDExvââ˛ö˚™´™˛´™ˆ´™´™Ô´Æ∫ª˛∫˚ªÀ˝ª∫¸ª∫˙ª∫˙ª∫ªÙ∫ªªÀÀ¸Ã    ÀÃËÃÃÀ∫∫ª˛∫˝ªÀ˛ªÀªªÀ¸ª∫©òàá˛wv˜wá¸wvffeeTT˛DC33˛2
  1248. "!!!!!Ò,""33TUEvwvfudCET34TCCUUS3EdUTCESDDTDTDwgôô©©˛™∫™¸∫™ˆ∫ª˙∫ªÙ∫ª•˙´ª´ª´¸ªˆ´ªÛ´™´™¯´ªºªºÃ˝º˝Ãºªª˙´ª´˚ª´ªª˛´ª´™ôâx˛w¸gwwgg¸w    gwgffVUUED˛433#˛"˛˝ı##DED˛gefUD4E3$DD45UD35UED4EC44E4DEgxâô˝öı™˙´™´™˛´™ˆ´™¸´πª˝∫˙ªÀªÀ̪∫˛ª∫ª¸∫ª∫ª˛∫ªªÀÀ˛ÃÀ˝Ã    ‹‹ÃÃÀª∫™ª∫˝ª˛ÀªÀÀªªÀÀ¸ª∫©òàááwá˝v¸wáwàwwvwvveeUTTDCD˛3˛2!"!˚!Ò*"23DUTgvwvfeTCUC3DTTDeTCEeTTDDdCDTDTUwâôô©˝™∫˛™˛∫™˝∫ª˛∫ªˆ∫ª∫ª∫ª˙∫ª∫µ˛´™˝´¸ª´ª´´ªª˛´ª´ª˛´ª˚´™Ô´ºª˙º˝Ã˛ª™™˝´Ùª´ª´ª™ôàxxwgwggf¸g˛wx˛wgff˛UDD44˛3##""˛˝<##4EDFffgfeU3ED34EDDUD34UED4ED4DD4UEgââöôöö™ö˚™´™˛´™˙´˛™´™Ô´¥∫ª™∫∫ª∫∫ªª∫˛ª∫˛ª˛∫ª˛∫ªˆ∫ª˛ÀÃÀÃÀÃËË˝À™∫∫ª∫˛ªÀÀÙª∫ôòáà˝wvwv¸w˛á˛wvvffUUTTD˛C    3322"!!"!!˝Ú*!"3DDTEgvwveTCDT2DDTTUTD4eTTDTTCDTDeUwòòô©˜™∫™™¯∫™∫™™˙∫ª∫ª¸∫ª˛∫ªπ´´™™¸´ª´ª´ª´ª´ª˙´ªı´™ˆ´™˛´ªªººª˝º˛Ãªªºª™˝´ª´¸ª´¸ª´ª™´´™ôàxxwgwwgffgwgg¸w    gwgfVUEEDD˛433#˛"˝˚Ú#44D5VfgffTD4E"4˛DFDE3UDE˛D    C4EDVUhâôô˝ö˛™ö˛™ö™™´˛™´˛™´˚™ı´™´™˛´Øª∫ª∫¸ªÀªªÀ˜ª∫ˆª∫ª˛∫ª˛∫ ª∫ªª∫∫ª∫ªªÀÀøÀÃË˝À∫∫™˚ª˛ÀªÀªÀªÀÀ˛ª˛∫©ààáá˝wv˘w áwáwvvfeUUTTD˛C3˝2""˝!!˛ Ò"23˛DefgvedDDTC3DDTUdDCU˛T DTSDDTUfwâô©©˜™∫˛™˜∫™¯∫˛ª¯∫∞´™˝´ª´¸ª´˛ª´ª¯´ª˛´ªı´™˘´ºª˘ºúºªº´™˛´ª´ˆª˚´™ôàx¸w˚gwg¸wg˛fUEED˝433"#˛"˛¸˛˛˛˛˛+##4DDUVfwfU4DDC#4DDEUD3ETDD4DD54EEVgââöö™ö˛™ö´˙™´™´™˛´™´¸™´™¢˛∫ª∫ª˛∫¯ª¸∫ª˛∫ª˘∫ªª˙ÀÃË˚À˛∫ªªÀ˚ªÀªª˛Àª˝∫™©òàáá˛w¸v˝wá˝w vfeUUTTDC3C33˛2"2"2˛"!!Ì"33TCUeffveSDTS33DTUeDCUTTCDT˛D˛Uwôô©˘™∫˛™∫∫™˘∫™∫™˘∫˛ª∫ª˘∫í¯´˛ª´´ªª´ªªÍ´™˜´ª˛ºªººªººÃªºÃºªª™˛´Úª˛´™ôôààx˝w˚gwggwgwwgfVUUEED4˝3˝#˝"    "'#4ED5VUVgUC4DD33DDEUDC5DD44DDEDUEUgyôô˝öˆ™˚´¸™´™Ô´™ßª∫ª∫Óª∫˜ª∫∫ª∫ª∫ª¸∫ª∫ª∫∫˛ªÀÀøÀ¸ÃÀÃÀ∫∫ªªÛÀª˝∫ ©ôòòáwááwwvwv˘wáwvfeTUTT¸C˛323˝2""˛!Ó"3DDdD˛fwuSDTTC4DDTUTTEdTTCE˛TUUewâôô©˝™∫™∫™∫˛™Ù∫™∫∫ªª∫∫˙ª∫ª∫ª˛∫…˚´ª¸´    ª´ª´ª´ª´´ª˚´ª˛´ªÛ´™˚´¯ºÃ˛ºªºªª˛´º˛ªºªºªº˛ªºª˛´™™ööâààwwxggffg˛wg˛wxwgff˛U    ED43343#33˛#¸"(#4DEDVffgfCDDE3˛4DVUD4UEDDEDDEEUVgxâ˝ö™ö™´™™´™´™´™´™˛´™´™´˛™´™Ô´´∫ª∫∫˚ª∫ˆª˛∫¸ª∫˛ª˙∫ª¯∫˛ª¯ÀÃÀÃ˝À∫∫˝ª˚ÀªÀÀªªÀ˛∫™©™©ôòàáá˛w˛vwwvwv˛w    áwvvUUTTDD˝C    3C332322"2˚!("3DTUTUffgvSDTDC3CDDUeTDDUTTDTDTDUexáôô©˚™˛∫™∫™ı∫™ˆ∫    ªª∫ª∫ª∫ª∫∫§¸´ª˙´ªÂ´™´™´™˚´ªª˛ºªºª˘ºª™´´ª´ªªº˝ª´˛ª˛´˛™ööâôôàxwwggffggw¸g wwffeUUEDED44˚3#3#˛"˛Ú#4˝EVggvTDD4C3344EUD44UED4UDDEUUhàâô˝ö˜™´˛™    ´™´™´ö™™´™Ó´™∫∫˙ª∫˙ª∫ª∫˛ª∫˘ª∫∫ª∫ª∫ªˆ∫˝ªÀÃ˚ÀÃÃÀ˛Ã˛À˚ª˙À¸ª˛™˛©ôôòàáávw˛v˛wv˝wáwveeU˝TDCCDC33C˛3˛2"!"˝! Ô 3DUeUUewvwd˛DC3CTDUeTCDUTTDTUTUUeháâô©˝™˝∫™™∫™˜∫˛™ˆ∫ª∫˛ª∫ªª∫∫≥˝´ª¯´ª´ªı´™™´™™˝´Úºªª˛´ªª¸ºªªº˛ª´´™öö˝ôààwxwwggf˙g˛wgf˝UE˛D3˝434˝3#"#"""˛˛˛    #4EVUUV˛gUD44D43D4EVUD4ETEETEDEUfXàyô˝ö˛™´˙™´™´™™´™™´˝™˝´™´™˜´™ö∏˛∫ª∫˛ª∫∫™ª∫ª∫ª∫∫ªª∫ª∫ª∫˛ª˛∫ª˙∫ª˝∫™∫˛™∫∫˛ªÀÃ˘À    ÃÃÀÃÀÀ ªª∫˛ª¯À∫∫˝™ ©ôòôòááàáwvwf˛w˛v˝wáfeTU˝T˚DCC˛3C˘2"2!Ò("3EVeeffvvdTDCTC3DCDeUTDUdUTTDSEVvgòxô™©ı™∫∫™¸∫¸™¸∫™˙∫ª∫ª∫ª∫™ü™˙´˛™‰´™™´´ö¸™˝´˜ºÃ˝ºª¸´ªª¸º˝ª˝™
  1249. ööôàôâàágxw˚g wgffggwgwfUD˚ED˛EDD3˛43##""˝#""Ú#5VfUVfggeE5CD˝34UU˛D UEUEEDEEfVàwâ˚ö™ö˛™ö˛™ö˙™ö™ö™™´˘™˘´ˇ™≠™˛∫ªª˚∫ª˛∫ª∫ª˛∫˘ª˚∫ª˙∫™™∫™ª∫™∫ªªÃÀÀÃÃÀÃÀÀÃÃÀÃÀÃÀ˙ªÃÃ˚Àªª˛∫™©¸ôòáàáwwvwv˛wvwv˛wáv˝UT˘UT˛DTS˛C    233CC322"!Ú"3DefvfvwvueDCD˝CDUU˝T UeTUTUUvfâáô©Á™˚∫˝™˝∫ª˝∫™¡¯´™´™˛´™´™¸´™´´ª˝´™˛´™´™´™´™´¸™´™´™´´Òºª´´˛ª˙ºªª´ª´´ö™ôâôôââà˛xww˝gww˝gwwgfUUEUE¸UVVUVU˛E3D3443#34343#""#4EVgVfggeUD343D334EU˛DEEUEEDEEgfyàyôööÔ™´¸™´™´˘™´´™˛´˛™≥™™Ú∫ª˙∫ª∫ªª∫∫ªÚ∫™∫∫™∫∫ªªÀÀÃÀÃÃÀÀ˛ÃÀÃÀÀ¸ªÀÀÃ˛ÀÃ˛À    ªª∫™©òòàôô˛ò˝á˝v˝wvvwwvwve˛Ue˛Uef˝veUeTTDDSDCC3CDC˛2" Û"4Ufvvf˛vfTC4˛C3CUUTTU˝T
  1250. UTUUgwâòô©©˘™∫Ò™∫∫™∫¸™∫™˚∫™∫∫µ™´™´™´˛™´˛™´™™˝´™´˛™˙´™´™˛´™´™´™´¸™´˛™´Òºª˝´˙º˝ª™´™™àâàà˝â    ààwwfwfggw¸gwggfUUE˚U VffwgffVUUEE˛D43˛42""Ù#EV˛fg˛fT433C˛3EEU˛ED˛EUEUgx˛â˝öΙ´™´™´˝™ö™™´˛™´˝™†∫∫ª˙∫ª∫ªÈ∫ª˛ÃÀÃÀÃÀ˙ÃÀÀ˛ª˛ÃÀÃ˙À∫™∫©©àôàà©ôòòàáv˛wv˛wvvw¸vUeUe˝Ufvf¸wvveUUT˛DTDC3322˛!Û"3DffwvvwvvdD3˛C3CDE˝UT˝UEUgà˛ô©™©™™∫™˘∫™™∫™™˝∫™˚∫°´™÷´™´™˚´Òºª´ªª¯º¸ª™ôöââààôââààxwgwgfgwggf˛g˛f˚UE˛Vf˙gUU˛D4˛D33##"˛˛˛˛ #5Ufggfgfge4˚34EEUEUEUUEU5egà˛ô¸ö˚™´ö˛™ö™´™´´™´˛™˛´™´˙™´˛™´™´™√˛∫ª˛∫ª˛∫ª˛∫ª˛∫ª˙∫ªÚ∫ª∫∫™™˛∫ ª∫ªÀÃÀÃÀÃÀÃÀ¸Ã ÀÀªÀªÀÃÃÀÃÀøÀª˛∫˛©òòàôàôòòááwávvwwvff˛vffee˙Uffvvwv˛wvfeeUe˝TCC22!"!!Û"4UfwwvwwvuCC3C2DC4D˙UDeEewò˛ô©©˚™∫™∫™™∫˛™∫™™˛∫™∫™˙∫™∫™˜∫™™´´™Ï´™¸´™ˆ´˝™ö™˚´ˆºÃ˛º˝ª˙ºªº˝ª´™õ™ö´òxàâàâàà˝wggww˚fVfUU˛EUEUVVgf˛gwgffggfUUDEDD43#"Ù 4EVgwggwgf˛3D#43#DEEUEUVUTU5fgââôô¸ö™ö¯™ö˙™´™´™˛´¸™´™´˛™´˝™ª˝∫ª∫∫˝ª∫˛ª∫˛ª∫ªª˝∫ª∫ªÒ∫™˚∫ªªºÃÃÀˆÃÀªªÀ¸Ã¸À∫∫™∫™ªª˛∫òôòòàôòáwwááwáwwvffvffee˚Ueeff˛w
  1251. àáávvwávfee˛TC32""˝!Ù"3Ufvá˝wvTC3CC3C3TEUfeUVedUDfwòôô©©™©™™∫¸™∫˚™˛∫™ı∫ ™∫∫™∫∫™∫™∫™∫™ƒ™Ì´˝™¯´™ö´™™˝´¸™´™˝´ººÃ˛ºÃ˛ºÃ˛ºúª´ª˚ºªº˛ª    ™ö™™ö´ª™™ô˝âôààwxxwgxwgfVVfVV˛UEDEE˛U VVggxàwwgwxxg˛f(UDD433""#EVghwgwxwT434˛3$DDUVUEFUUEDWh˛âöô˚ö¯™ö˝™´™´˛™´ˆ™´˛™´˛™Ω™˛∫ªª˙∫ª˛∫ªª∫∫™™∫™Ù∫™˛∫™∫˛™∫˛™∫∫ªªÃÀ¸ÃÀ˚ÃÀÀªÀ˝Ã+ÀÀÃÀÀªÀ∫™ªª∫™∫πö∫©©ôô©ôààááwwáávfeUffeeUTUTT¸Uffwááàááààávffe˛TDDC˛2˛!Û"#DUfwàáwwátD3C33C3DDUfdUUeUUDfwàòô˛©Ò™∫˝™∫˛™˚∫˜™∫™™∫Ø˝™´´™´™´™´™´´™´´˙™´˙™´´Ó™´˘º¸Ãºº´ª˜ºªª™™´ª™™öª™™´™öôöôààxx˝wffVU˛VUUE˛D¸EVfgww¸xwgfVUEDDC433#""˜&4EVgxwwgwe433##43DDEfUEEUUEDVgàââôöö™˛ö™ö™ö¸™öÛ™´ö˜™´˝™¬™∫ª¸∫™∫∫™˚∫ª¸∫™˚∫™˛∫™˙∫™™∫™∫™∫∫™∫∫ªÃÃÀ˚ËËÃÃ˝À˛ÃÀÃÃÀÀÃÃÀÀ∫ªÀÀ∫ªÀÀ˝∫˛™®˛à    áwáwvfeeUe˛UT˝DTTUU˝fwáv˛wvfeeUTTCC3C22!"!Ù"3Ufwx˝áuDBCC3DCTDUfeUUeUUDfwòôô˛©Ó™∫˛™∫™∫™∫¯™∫˛™∫™∫™Œ´™˛´™´™´™´™´™¸´˛™´™´™´™´¸™´´™™´˛™´˛™´™´™´™´™´ºÃººÃ˛º˚Ã˘ºªºªºªºªºªªºª´ªªº¸ª™™ô˝àxwwvV˛UEEUDD44˝D˛EUVV˚fgfUUDD3#33##"˛˛˛˛#EVgw˝xvDC4334CEDEfUUEUUEDVhââ˛ôöö™ö™ö˙™ö˘™´˝™´´˙™´¯™û”∫™¸∫™∫ªÀ˙˲Ã‹Ã˝ÀÃÀØÀ˛ªÀªª˚À∫™©©˛òàáàÜfeUTUTTCC33DC˛DTTUe˚fvffUUTDC3˝2""!Ú!#DfvwáàáávUSCC3DSTDUveUUeUUTVwòôô˛©™©˘™∫˙™∫∫™∫∫™˙∫˝™∫™∫∫˛™∫∫™  ™´™´™´™´™´™´™˛´ ™´™´™´™´™´™´˛™´™´™´˚™ö˝™ ´™™´´™´´ºÃºÃ˝º¸Ã˚ºúªºº˛ª™´´ªª´™´´˛ªºº˝ª ™öôôààxxvfEE˝D4˝3    4344DEEUVV˚fUUED433˛"˛˝ı5VfgxàxxwUC4434˛D EffUEVEUDGgâ˛ô˘ö˝™öö˛™ö™™´¸™´¯™´˝™öö˝™ßÙ∫™∫™˜∫™∫˛™∫™™˝∫ªÀ˘Ã‹Ã‹ÃÃ˛ÀÃÀÃÀÃÀÀ˝∫™∫∫ª˛∫ªª¯À∫∫©òôòááeTDTDDCC3323˛CDTUUff˚vfeeTDCC˝2¸!˛Ù"Defw˝àáed3D3DTTDEvfeUfeUefwàôô©©™©™©Ú™˝∫ ™∫™∫™™∫∫™∫™™˝∫˚™∫—´™´™˛´™´™´˛™¸´™´˝™ ´™™´™´™™´™™´¸™´˛™´™´™´™´™´ººÃú¯Ã˘º ª´™´™™ö™ö™ö™˛´˘º ªª´ööôôàweEDD˝3
  1252. ##"#3344EUV˛f˛g(wgfVUEDD3##"$UVgh˛àwfT4D#4EDDEgfUUVUEVggàâô˚ö™˛ö˛™ö˝™ö™´™´˛™´ı™´˛™ö˝™ƒ˛∫™™˛∫™∫∫™™˚∫™∫™∫∫™˛∫™˚∫™˝∫˛™∫™∫™∫™˛∫™™∫ÀÃÀ€˛Ã˚‹Ã˙ÀªÀ∫∫™∫˝™©™™∫ª˝ÀÃÀÃÀÃÀÀ ∫∫©òàáuTTCC˛2""2233DUUeffvwáàôòàáwveTTC332"!˝Ú3Uffw˛àávdCD23˛TD˛fUUTUfwvàô˛©™∫™™∫™™∫˚™∫™™˛∫™∫∫˙™±¸™´˘™´™™´Í™öı™´¨ºÃú¯Ã
  1253. ºªºªºªª´ª´´˝™˝ö´´ª¸ºÃ¸ºªª™™ôàwfED33""˝"#3EUVffggyöö™ôààwgfUUDD33"˝Ò#5VVgxxàwwUC433EUEDVffU˛EVgfyâôôö™˛ö˝™ö™ö™™öö¯™ö™™ö™™ö˛™ö˛™öö™™˛ö™º™∫ª™˝∫™˛∫™™¸∫™˝∫™˛∫™˚∫™∫™∫∫™™∫™∫™∫™∫™∫™™∫™ªÃÀ˛Ã˚‹ÃÃ˚À¸ª∫¸™ªªÀÀ˜Ã˝À∫©©òáeeDC22!!!""3DUefvvwⲙòòààáveUTUTDC3!!!!3DfegxòàáveCDCCEeTSUffeTUUfgvxòô©Ó™∫∫˝™∫™∫˝™∫™™∫˝™©¸™∫¿™™˛´™´´˚™˛´™´™´™´™´ö˚™´´¸™´™™´˙™´™´™™´˝º¯Ãº¸ª˚´™˛´ª˛º˘ÃºÃ˝º,ª´™ôàwfUD3""##4EVVggâööôôâàxâxwfUD44DD3"˛˛˛˛##4VUVgààxgeDD435UEDEVVUDEEVgwhââ˝ö˛™ö¸™öÛ™´˛™´ı™ö™™fi˛∫ª™∫™∫™˛∫™∫™¸∫˛™∫™˛∫™˛∫™∫∫™∫∫™∫˛™∫™∫™™˛∫™™∫™ª˛ÀÃÃ˛‹Ã˛‹ÃÀÀ˛ª∫ª∫˛ª∫∫ªÀÀÃÀ˝Ã‹˛Ã‹ÃÃÀÃÀÃÀÀ∫∫©òÜvdDB2!˛ ""4UUefwà™©¸òààòàáveS33DC2!! Ô!"3UeUwààááuTTDCEUUTTVeeTDTUwwxôô©¸™∫™™∫™˛∫    ™™∫™™∫∫™™∫˛™˛∫˛™∫™∫™∫™∫˚™∫∫∞˛™´™´™´™´™´™´™´™´™´õ´˙™
  1254. ´™™´™™´™™õ´˝º˘Ãººª´ª˝´˝ªººÃúÃúıÃ˛ºª™™àwfTD3"#4EUVfhöôâ˛àâàâôöôôàwUD"#43"˛$$EVUVhàxwfDED35UUEDFfUDEUUgxxââôö™ö˝™ö˛™ö™ö™™õ˝™ö˝™´Ì™¶fi∫™∫∫™Ò∫ªÀÀ˛Ã˚‹ÃÃÀÀªÀ¸ªÀÀ˝Ã‹Ã˛‹˛Ã¯‹ÃÃÀÀ∫∫òávTCC2!˛!3DUUfwôòòàòàòòà˛ô˛ò
  1255. áveC2"4C2!Ô!3DeeVwààávTUTS4eTUTVfeTUUegààòòô©˛™    ∫∫™™∫™∫™∫∫˛™∫™∫™∫∫™™˛∫™∫∫™¯∫˝™∫∫Δ˛´™Ú´™´™´™˛´™¯´™´˛™´™´˛™´™´™™˛´¸º˙úºª´˛ª´ª¸ºúºúºªª™ôàeU43"#4EVgxààxx˛àFxxâàâòxxwfUU3"43"#DEUUgxxwfEUET4UDEUVfVEEVUXwàââöö¸™ö¸™ö™ö™™´™˛´™´™´™˛´˘™´´™™ö™ö´´òÙ∫ªÈ∫™∫˛™∫™ˆ∫ª¸Ã˚‹˝À ªª∫ªªÀÀÃËÀÃÃ˛‹˛Ã‹˛Ã¸‹˲À    ª∫©áuTC32!˛"3DUfwà˝á˛àáâòáö∫óvvdDUTB"4T2!Ô
  1256. #DUUefwàáu˛UTDTD˛UffeTVegwà˛ôÓ™˜∫™∫˙™∫˝™∫™∫∫∏™˛´™¸´™˛´™´™´™´™´™´™´™™´´™˛´˛™´¯™´¸™´™´ª˝º˙úºªª˛´ª˛º˛Ã˛ºÃ˛ºª™ôáfT33"#4Fgwxwwxàà˛xâày´ªòeET"$UD"#E3"Ò
  1257. 4EEUVgxwf˛UT4EDEUFffUDFfWwâôôö˙™ö™ö™™ö™öö˝™´¸™´˘™ö˜™´≠∫∫ª˝∫ª∫∫ª¸∫ª∫ªÒ∫™˝∫™™∫™¸∫˛™∫∫™™ªÀ˝Ã¸‹Ã˝Àªª∫ª˝Ã‹˛ÀÃÃ˛‹ËÀÃ˝‹Ã˛‹˲À∫©ávdDC2!"24f¸w˚àôàäªÀßdDT!ETC24T2! Ò "DTUeewáávUeUTDUSUUVfvedUvfáàôô©Ô™∫™˚∫™˛∫Ò™∫ª´™˙´™ˆ´™´´™™´˛™˛´™´˘™´ˆ™´´˝º˙úªª´ª˛´ººÃºÃ˛ªºº¸Ã™ˆÃººªªôáfUD3""%gffw˘xàw㪪ßC#4ED"#D2˛˛˛˛4˛EUfwwfVfUUDEDEUVVfUUEggwyâöö˝™´¸™ö™ö™ö™ö˝™´™™´™™´Ú™´˛™¿˙∫ªÒ∫™¯∫ ™∫™∫™∫™™∫∫™∫™˙∫™∫ªÀÃÃÀˋË‹ÃÀÀªª˛∫ªÀ˛ÃÀÀ˛ªÃ˲ÃπÃ‹Ã‹Ã˛‹˛Ã˛À∫©ávdTC1!˛"!5fefwàòááwáààòáöªª¶B3 4TB2DC"Ô "4UTUUfgwvfeU˝TEUUfveeUwvwàòô™™∫∫˚™©™©˛™∫™˘∫
  1258. ™∫™∫∫™∫™™∫©˚™˝∫™ø™˛´™ˆ´™´™´˛™´ö´´˝™´˛™´¸™öö˛™õ˘™´´¸º¸Ãº˛ª˝´ª˛ºÃ˛ª´ºº¸ÃªˆÃ ºªª™©àfUD3"˝"5UEgwxâxwwxwxàwzª´óC"#43"#3"#˛E˛VgfVf˝EDEUUVfUfUgwwââôöö˛™öö™˚ö™ö™™´¸™´˝™´™™ö™˝ö™™ö™ö¸™∞∫∫ª∫˛ª∫ª˛∫ª∫ª∫ªÈ∫˝™∫™∫™∫∫™™˛∫ªÀÃÀÃø‹ÀÃ˚ª ÀÃÀÃÀÀª∫∫ºÃÃ˛‹ÃËÃø‹˛ÃÀê∫©óveTC2!""DUfáwàòà˝á    wàÜ⪪ßS22˛"2C2332!Ò3DTUUe˝feTTUTTUUefvevUwwáàô©™™∫Ú™˙∫™˚∫¸™©˚™˝∫÷´™¯´™˙´™´™´˛™´™´˛™´˙™´˛™´¸™´™´™´™´´˝º¸Ãººª´´ª´´˚ºª´™¨˛ºÃúºÃºº˚Ã˝º    ª™ôàfUD3"˝"45hwgyààxwwggxwhõ™óC#3"#˛"1##4EEUUVVUVUDDETDEUVVffgVgxwxäö˛™ö™ö˛™˛ö™ö™ö™™´˙™´˚™ö™ö™ö™ö™ö™ö™™´™º˝∫ªª∫ª∫ª˛∫ªÛ∫™˙∫ ™∫™∫∫™∫™™∫™∫™˝∫™˛∫ªÃÀÀÃ˝‹˛À˚ª ÃÀÃÀÃÀÀ∫∫ªÀÀ˙ÃÀ¸‹ÃÃ˝À    ∫©óveS22!˛""34xáwàòòááwwvwávxôÜSC222˝"2!24˛TUUeUUTTDDTDUeU˛fvf˛wàô©˝™©˝™©©™©˝™¸∫™∫™¸∫˚™©˘™∫™∫†™¯´™ˆ´˚™ö¸™öÔ™´ö™´´˝º˝Ãº´ªª´ª´ªª¸ºªª™™´˜º¸Ã˝º,ªª™ôàwUD3"#$gwxxôàxwwgfgwfgwwUD!"˛"#4EEDEEU˛E
  1259. D44UDEUUVVf˛gxvyâÒö™™´™´ı™ö™™öö™ö™ö˚™´∂∫∫ª∫ª∫˛ª˛∫ª∫ª∫¸™∫™™∫™™∫∫˚™∫˛™˛∫ÃÀÃÀ˝‹ÃÃÀ¸ª ÀÃÃÀÃÃÀÀª∫™º˛ÃÀ˛ÃÀÃ˝‹˝Ã˛À∫©óveTC2!""24fwwààòáàáwvfwvf˛vd 22˛""! Ò33DTTE˛T    DTDCDTDEUe˛fwvwwáyô©˛™©¯™©˛™˚∫™∫™∫Ì™∫ú™™Ó´fl™ö™™¨˛º¸Ãº˝ª´ªª˚ºªª™™´Ã˘º˝Ã˚ºªªôàfUD3"#4Vfg˛wxxwwfVV˛gffB#"!˝˛˛˛˛ ##4DEED4D3˝4DDEUUFVVggxwxxô˝öôıö™ö™™´ı™ö™™˚ö˚™≥™˚∫ªÛ∫™˛∫™∫˛™∫˝™∫™™∫™™ªÃÀÃËËÀÃÀªÀ˛ª¯À ∫ªÀ¸ÃÀÃËÀËÃÀÃÀÃÀÀ∫©áveTC2!¸""3Uf˛wv˛wvveUfwvvT1"2!˛"!"3D˛TSC3C3CC4˛DUTUeffwwáààôô©™˛©™©™©™©˛™©˙™˛∫ˆ™¸©™™∫™∫ˇ™Æ˛™ˆ´™´™´™´˛™´™ö™™ö™ö˙™ö™ö™´˛º˝Ãººªª˛´ª´ºªª´˝ºªª˜ºú˛Ã˝ºªª™ôàfUD3""$Ffw˝gfgffVUEVVU2"##"˛Ò #34DEDD3"##˛344DUUEUVfggxààââööô¸öôöâ˚ö˙™ö´™˝ö™ˆö¸™Ø˝∫ª∫ª∫∫ª∫∫ª¯∫™∫∫™∫∫™˝∫™∫˛™∫Ô™∫ªÃÃÀÃ˛‹ÃÀÀ¸ª˛À˛ªÀÃøÀ¸ÃÀÃËˋøÀ&∫©áveTS2!!!""3UfwvwáwvvffeeUUTTC322!˙!Ò33DTUTT2""2233CCDUUDUeffàáàòôô˜©ô˙™∫™¸∫™∫˜™©™©¸™˛∫”´™´™¸´™¸´™˛´™´™´™´™´˘™ö˙™ö™ö™ö™ö˛™    ö™ö™™´ºÃºº˛Ã˛ºªª´ª´ºªº¸ª˜ºúº˛ÃºÃÃ˝º
  1260. ª™ôàfUED"˝"#Ef˛gxwwff˛V-UEDD3""#34DEUD2˛"#334ED3FVggxxàâôôöôöôöô˙ö™™ö™™´˛™´ı™˛ö™öö™ö˛™´™´Î∫™¸∫™∫™˛∫˘™©ˆ™©˛™∫ªÃÀÃ˛‹ÃÃ˛Àª˚ÀªÀªª˙À˚Ë‹ÃËøÀ    ∫©óveUS2 ˛!!"3Uf˛wááwv˛feUTDCC2!˙"3CDUUTB!""!"23DUTCEffw˛àò˛ô˚©™˛©    ™©™™©©™©™™˛∫˛™∫˘™¸©™™∫™™∫∫¥™™˝´™˛´™˛´˛™´¸™´ˆ™ö™˛ö™™ö˛™ö™˛ö™˛ö™ö™´¨˛º˛Ãºº¯ª˝´ªªºª¯º˛ÃººÃººªºªª™©àwfD3"˛#EV˛g˛w fVffUED43""˙#44DEUD3#4ED36fgwxààââ˚ôÙö™™ö˛™ö˛™ö˛™ö™˘ö˚™µ˚∫ª˛∫ª¸∫™¸∫˝™∫˛™∫™™∫¯™©¸™©¯™ªÃÀË‹˛ÃÀªÀªª˛À˛ª∫ªª˛ÀÃÃÀ˙Ë‹Ã‹ÃøÀ    ∫©òveTC1¸!3Efv˝w ávvfveTCC32"!ˆ!Û#3DDUTTB!!"34TS2Ffwáààòò˛ô˙©™™©©™©™©¸™∫∫™∫˜™©™¸©™™∫˛™”™™¯´™™˚´™´ˆ™´˚™˛ö™ö™ö™ö™ö˛™˝ö™´´˛º˛Ã
  1261. ººª´ª´ªªºªª˝´ªªººª˘ºÃúÃøº
  1262. ªª™ôàfUD3!˛#$Vf˛gwwg˛fUUD3#"˛˛˛˛˛#344EDD2"#EC5V˛xàà˛âôôöôö˛ô öö™ö™ö™ö™ö™ö¸™ö™ö˙™ööôöôöö™ö˝™•Ì∫˛™∫¸™˛∫˝™©˛™©ˆ™©©¸™∫ªÀÀ¸ÃÀªÀª˝Àªª∫˛ª˙À˚ËËÃÃÀÃ˛À ª∫®áveT2!˛""3Ef˚v
  1263. fvfeTTC32!ı˛ˆ"3CDUTS2˛ !"3UB!EVààáàò¸ô©ô©ôô˝©™©ˆ™©˛™©¸™˚©ô˛™©˛™À™™´™™´™´™˛´™´™´™´™´˝™ö˜™öö™˛ö™ö™ö™ö™¸ö™¸ö´´¸º úªª´ªªºªª´ª˛´ª´ªª¯ºúªºÃ˝º˛ª™ôwfUD3˚"#5Vf˝g˝f    UED33""˙˛˜˛
  1264. 344DDC"˛ #E25Vxàxyà˝âôâôâ˝ô˚ö™˛ö™ö™ö™ö™˛ö™ö™ö™öö˝ôâöö™ö˛™ú¯∫™ı∫™∫∫™∫∫™™¸∫©™©¸™©™©¯™©˝™ªÀÀ˝ÃÀÀ˛ª˝À˙ª˛ÀÃÀÙÃ˝Àª∫®óveTC!˛"4fvfww˛v ffeeTC32""!˘˛Ù˛"3CDTTS2˙#DB"Vfàáààòòôô©ô©©ôô˝©™˛©™©Ô™˘©¸™∫µ´™´™˛´™˛´™´™´™¸´™´˙™´˝™˝öô˚ö™ıö™´˛ºúº˚ªººªª˝´˛ª˛ºª˝ºÃ˜ºªºª™ôàfUD3¸#EfVgg˛fVVUUD43#"˛¸˚#44DD2"43FVxwxx˛âôôâ˚ô˘ö™˙ö™ıö˛ô˝ö˝™Ø™Í∫©™™∫™¸∫˝™©™©™©©™©©˛™©™©™©©™˛©™ªÀ˛ÃÀÀªÀª¸À˝ª¯ÀÃËËËÀÃ˘À∫©ávdS2!˝"4Uf˝vffeeUTCC2"!!˙ˆ
  1265. "3CDCD1!˙ "DB"Vfwáwàòò¸ô©ô©ô˘©˛™©™©™©™˛©™©¸™¯©™©˛™æ™´™´™´™˛´™´™´™´™´˝™ö˛™    ö™™´™´™™ö™Íöôö´˛ºÃú´˛ªºº˝ª´˚ªºª˝º¸Ã˝ºªº˝ª    ™©wfDC"¸ #5VffgffV˛UED3"˝˝˘#4434˚42Ffgwgxàââôâ˚ôöô˚ö™ˆö™˛ö™˝öôôöôôöô˝ö™≈ı∫˝™˛∫™∫˝™©˛™˛∫¸™©™©™˛©™©™©™©˝™©©™©™©™™ªÀÀÃÃÀÀª˙À˛ª˜ÀÃËËÃÃÀÃ˙À
  1266. ∫®áedC2!!˛!˛"4Uffvff˛eUTTC2"!!˛¸¯!#DC3B!"2 ¸4B"Vfwáwàòòôô©ô©ôô©©ô˚©™©˛™©™©™©™˛©˛™©˛™¸©ô©™©˛™©´™™˙´™´˛™´™´™™´Ú™Ùö™¸ö™˙ö´˛ºÃ˛ª¸º¸ª¸ºª¸º¸Ã¯º ª™àweU3"˝#5UVfVVUVUUDD33"˛˛˛˛43#"#3"˛$2FVgwwxààââôâôôöôÙöô˝ö™¯ö™˝öô˘öû™™˜∫™˚∫Ì™˛©™©™˛©™©©™˙©    ™©©™ªÀÃÀÀªÌÀÃ˲ËÀÃ˙Àª∫òÜeTC!"˛!""4UeeVeeUTTDCC22¸!˝˘¯ "32!!4C2!˝
  1267. 32#Vfvwwà˛ò¸ô˘©™¯©™™˝©™©©™©˛™¯©™©™∫™´˛™´™´˛™´™´™´™´™´™™ö™™öö™ö˛™˘öô¯öô˚öô¸ö´ººÃ˝ª˛ºªºª˛ºª˛ºª˚º¸Ã˝ºªªººªª™òwfD3""˝˝#4EVVUUEUDD33#"""˝Ú ""443"˛ #3Ffggxxà˝âôôâ˛ôöô˝öôÙöô¯öôôö˛ô¸öµ∫∫™˚∫™¸∫™˛∫¸™∫™™∫™∫∫˝™©™˙©™˛©™™˝©™˛©™˛©™∫ÃËÀªÀÃÀ˝Ã‹Ã‹ÃïÀ∫òáeTC2"˝!˘"23DU˛eUTTCC3322""2"!!!Ô!˛DDC2!˝    "3B"Vvwvwà˛ò˛ô©ôô˝©™©©™˝©™˛©™˝©™˛©¸™˙©™˛©™©æ´™´™˛´™˛´™´˝™´´˚™ö´˘™˘öô¯öôöô¸öôö™ººÃ˛ªÙºª˙º¸Ã¸º ªºªºª™àwUD3""˛˛
  1268. #3E˛UEDD˝3#˝"˝˛4D33"43Ffgwxxààââ˚ô¸öôöôööôööô˚ö™ö™˝ö™˛öô˝öôô˝ö¶Ú∫™˚∫™∫™™∫∫˛™∫¸™˝©™©™˛©™ªÃÃÀª¯ÀÃ˝ÀøÀÃËˢÀπòÜeTC22!!"!!¸!!"34T˛UTTC˛3˛2""˝!!˝DDC32!˛32"Ev˛wààòò˛ô©©ô©ô©©™¸©™˙©™˙©™©™©™¸©™˚©∑˛™´™´˛™´™´Î™¯öôôöô˘öôööô˝ö™¨ºÃÀ˛ªºª˛ºª¸ºª˛ºª˝º˛ÃºÃ˚ºªººª™àwUD33""˛ #$D˛EDD˝3#˝""˛Ú˝4DD3#"#"Ffgwwxàââôâ¸ôööôööô˝öô¸öô˙öô˝ö™˝öô¸öôöù™˙∫™˝∫˝™˛∫Ò™©©™˛©™Ó©™™ªÃ‹ÀÀªÃ˙ÀÃ˝ÀÃÀÀÃÀÃÀÃËËÀÃÀÃ˚Àª∫òÜeeCC22""!!!!!""3CD˝TDC3323˛2"!"˝!Ì˝3DDC22!32"Vvwwààò˘ôÔ©™˝©™˝©˛™˝©™˝©™©©¿´™´™´™´˝™´Ù™ö¸™ö™ö™˘öô¸öô˛öô˛öôö˛ôöö´ºÃ˛ª˛ºª˙ºª¯ºÃÃıºª™àvfUD33##"˝˛#4DDE˛D43˝#˛"˛˛˛˛˛˛4ED3##2Ffgwxàà˛âôââ˛ôöôö˛ôöôöô˛öô˙öô˚ö™ööô˜öÉ™™∫∫¸™∫∫˙™∫˙™∫¯™˛©™È©´ÀÃÀªÀªÔÀÃÀ˝Ã‹¯À∫©òvfUTC3˛2"˛!˛!!"3233DDTDDCC˝3˛2"!!˛Ó˝"DUTC2132#Uvww˛à˛ò˙ôÁ©™©™ı©∏™´´¸™ö´ı™ö¸™ö˛™ö™˘ö¸ôö˛ôööôööôöôö˛ôö´ºÃÀ´ªªºªºªºªªººª˛ºª˘º˛Ã˝ºª˛ºª∫™àwfUD33##""˛˝˛    ##334DD4D4˛3˛#""˝Ô˛˝$EDD3"#"Ffgwxàà˚âôâ˛ôâ˝ôöôöôôöôöôööôöôôıöôöôöô˛öô∫™∫˛™∫™∫™∫˙™∫∫™Ê©´ÃÃÀª˛ÀÃ˛ÀÃ˙ÀÃ˛ÀÃÀÃÀÃÃÀÀÃ˘À∫πòáveTC˝2!"!!˛"!"2˛3C˝D˛C332322"¸!Ô˛˝"3˛TC2 #2"Vvwwààòòôò˙ô©ôô©ô©ô©ô˛©ô˙©ô˚©™Ù©≥´™´˜™˛ö¸™˛ö™ö™öö™¯öô˛öôöôöôö˛ôöôöôö˙ôõººÀ˚ªÔº˛Ã˘º ªºª©àwfUDD##˛"˛""##3˙4˛3#3#˛"˛+#DEDC"#"Fgwxxàà˙âôâ˙ôâ˜ôöôöôöô˙öô˛öôöôöôööè˛™∫¸™∫˝™©™™∫∫¯™©¸™©™©™Ó©ôô©ô˛©™ÃÀÀ˛ªÔÀÃÀÃÀÈÀ∫©óávTTC2"2""!!˝    !!"22334˛CDCDC˛3˛2"!!Ê"#DTTC2 #2#Vww˝àòòôò˘ô©ˆô©ôô©©ô©ôôÔ©∞˘™ö™˛ö™ö™ö˛™ö™öö™™ö™˝ö™¸öôöôö˛ôö˙ôö¸ôâ˛ôöõººÃ˛´ºªºªÍºªºªº˛ª´©àwfUD3#˝"˝"##˛3433˛4 33#3##""Ì˝#4DD33"Vggxx˛àˆâ˛ôâ˙ô˛â˛ôâôâ˚ôöôöôö˛ôö˛ôö°™™∫∫ˆ™©™™∫˚™©ˆ™˜©ô©©ô˚©¸ô©©™ªÃÀ˛ª˙ÀÃ˙ÀÃÀÀ˝ÃÀÃÀøÀ
  1269. ÃÀÀ∫πàáeTC3˛2"˝!!"2233CCD˛C DCC3C3322""!Ï˚"4TTC2 "2#Vvwwààòòôò¸ôò¸ôò˜ô©ô©¸ô©©ôÙ©ô©µ˛™ö˙™ö™ö™öö˝™ö™¯ö™˚öôöôö¸ôö˛ôö˛ôö˙ôöººÃª´˝ª‰º    ªª™ôàwUDD3˛"˛ "##33˝434¸3#˛"˛˛˛˛˛˛4EDD"#"Vgwxx˛à˜âôâôââ˜ôâ˛ôâ˝ôöôöô˛öô˛öôö˛ôÖ™∫˛™∫‰™¯© ô©ô©ô©ô©ô©ô©©¸ô©©ôªÃ€∫ªªÔÀ˝ÃÀÀÃ˘À
  1270. ª∫©òveTD22"˘!!""233˘C˝3˛2"!Î˚"4TTC2 32#fwwáàà˝ò˛ô    òòôòôòôôòòÒô©©ôÛ©ô©∂ö¸™ö™ö™ö™ö™ö™ö™ö™ö™˙ö™˛ö™ööôöôö˝ôâôâ¸ôâ˙ôâ˛ôö´ºª˛´˝ªºª˛ºª˛ºªÚºªº˛ª ™ôáfUD3""˛ ""##33˛4˚3#3˛"Î˚$EDD33"$Vgwxxààâà˙âàââôôââô˛â˛ôâôâôâôââôôâôôööÙôÖ™∫∫™∫„™˝©ô˝©ôô˝©˝ô˛©˛ô©ô©ô™ªÃÀ˛ª¯ÀÃ˛ÀÃ˛À¸ÃÀÃÀÃ˘ÀπòáveTC2˙!"2!!!""233CCD¸C3C3˛2˛!‚3UTTC!"C2$fwwáàà˛òôòôôòôòòËôˆ©ô©˛ô√™™´˝™ö˜™´˝™ö˛™öö™™ö™˚öôö¸ôö˝ôâôâ¸ôâ˝ôö¨ºªª´ª´º¸ªÛºÃ˘ºªºªª™àwfUD3"˛˛"˛#3344344¸3##"˛$EDD33"$ggwxx˛à¯âàââô˛â¸ô
  1271. âôâôâôâôâôâ˝ôöô¸ö˚ôâù˝∫    ™™∫™™∫™∫™∫˝™∫˚™©™™©˝™¯©ô©ÏôªÃÀ˙ªÀª˝ÀÃ˙À¸Ã˘À ªÀª©òÜeeS32!!!""2!!!"223C3DD˛C 3C3C232"!!Í˚3DTDC!#C!$fwwá˛àòòôò˛ô˛òô˛òôòˆôò˚ôˆ©ô©˛ô©°Û™öö˚™ö˛™ö™ô˝ö™˝ö˛ôöôôâôââôô˛âôâôâô¸âôô´ºª¸´    ª´ªªºªªººªÚº˝ª ´ª´©àvUUC3"˛˛"##˛3˝4¸3##""Ï˛¸$˛D 3"#3"%fwwxx˛àÍâôâô˛âôââ˘ôâö˝ôâôâô†™˝∫™∫ˆ™∫ı™©™™˛©™˚©˝ô©˝ôò˙ôò˛ô´ÃÀªªÀ˝ª˙ÀÃ˚À˝ÃÀÃÀÃ˛À˝ª∫®òveTTC1¸
  1272. !""2!!"2C˝3CDCC3CC˝32""!!Ï˙"3DTTC13225gww˝à˙òô˝òô˝òôòÙô©ô©©ô˝©ô©©˙ô¥Ú™ö¸™ö™ö™ö™ö™ö™ö™ôöö™˝öôö˚ôâôâôâô¸âô˝â´ºª´´ª´ª´ªªºªºªÓºªª´ª´™òáfUDD3"˛"#¸3˛4˙3#""˛˛˛˛˛˛˛˛#4˛D3!42"5gwwxxààÏâôâôâô˛âôâö¯ôöôöôô˛âôâ≤™˝∫˝™∫™∫˙™
  1273. ∫™™©™©™©™©™˛©™˘©ô©ôô©˙ôòôòôòôòò˛ô´À ∫∫˙ª˚ÀøÀÃÀ€˛ÀÃÃ˛Àªª˛∫òáuTTC3!¸˛!"!!"3˛C3˝C3C3C33˛2"!!Ï˙ 3DDTC2!32"F˛wá˛àıòô˛òôòôòôò˛ôò˛ôò˚ô©˛ô˛©˘ôëö´¸™ö™™ö™ö™ö¸™ö™˜öôöôö˛ôö˝ôâôâôâôÚâõºª˝´ªª´˛ªººªºª´´ª´´™àwfUD33¸˚#4D33˝4¸3#"#˛"Í˝#4DD3"3"Fggwxx˛à˝âàÁâ¸ôâ˚ô˙⢙™∫™∫™∫ı™∫¸™©˛™©™©™˘©ô©Ûôò˛ôò˛ô´Ã ª∫˙ª˙ÀÃ˛À˛ÃÀ˛Ã˛À˛ª˛∫™óÜeUTC31˙ !!""!#DDTC˛DCC3CC33˛2"!͸#CDDB2!#C2#V˛wáàà˚òôòô¸òôòôòôò¯ôòÙô©ôòôò˝ôµˆ™ö™ö˝™´˜™ö™˝öô˛öôö˚ôâôâô˛âôâô˘â
  1274. õºª´´ª´ª´ª´˝ªÒº˛ª´ªª´™öàvUUD33"˝˛EDE4DD4˚3##""˛#3#3"#3"Vggwxx˝à˝âàâàÙâô˙â˚ôâôâôâ˛ô¸âô⢙˛∫™∫∫Ï™©™™ˆ©ô©˚ôòô˛òôôòôôòôòôô´ÀÀ∫ª∫˝ªÀª˚ÀøÀÃÀ˛Ã˛À¸ª
  1275. ∫™©óveTTC31˜"!#DTUTTDCC3C˛3˝2"!Ë˝322! C21#f˛w˝àòà˜òôô˝òôòôòôò˛ô˛ò¸ôò˙ôòôòôòòôôê™´¯™˚ö™´™¸ö™˚öô˛öôö˝ôâôâôôÚâàââõºÃ¸´ª´˝ª˛ºªıºªª¸´ ™™ôáfUDD33"˛˝
  1276. 4UEEDD4˛3˝#˛"Í##"3""$Vggwxx˝àâàâàâà◊âô®™˚∫˚™∫˝™∫˝™∫˝™©™™©©™™˛©™©©˛ô©˜ôòôòô˛ò˛ô´ÃÀ∫∫˙ª¸ÀÃ˛À
  1277. ÃÀÃÀÃË‹ÃÀÀ˝ª∫ª™©áveTTC32! ˝!""D˛UTTDCC˝322"2!˛Ë3˛2    !4C2!5f˛w¸àıòô˛ò¸ôòôòôò˛ôò˝ôö˙™ö˚™˝ö´˛™ˆöôö˛ôö˘ôâôÒâõººª¸´˙ª˜º˛Ãº˛ª¸´    ™ôàfUUD43"˝˛#5˛U˛D4˛3˝#""˛˛˛˛˛¸˛#    "43"5˛g˝x˝àâ˛àâàâà˛âà˘âôÊâµ∫∫™∫™∫∫Ù™∫™™©¸™˙©ôô©©˘ôòôòôôòôô˛òô¸òõÀø∫˝ªÀªÀª˚ÀÃÀÃËËÀÀ˛∫ª˝∫    ©òveTTC32"˚!˛!34Uee˛TCC˛32322!!˲22˛! #C2""Uvwwá˝àòà˘òôòô˛òô˛òô˛òô˛òôò˛ôò˛ô˛òô¸ò¸ôõö™ö˝™ö™™¸ö™ö¸™ö™ö™ö™˘öôöôôâ˛ôâ˛ôâõººª´™˝´˙ª¯º˛Ãºª¸´ ™´™ôàvUTDD#"˚"#4EVVU˛D33˛#3""͸"#3"V˛g¸x˝àâààââàâà¸âàÔâôˆâôââ´˙∫™™©™©˛™©ˆ™ı©ô©Ûôòô˛òô˛òôöÃÃÀ˝∫¸ªÀÀª˛ÀÃÃÀÀÃÀÃË‹ÃÀªª∫∫ª˛∫©òáeeTC22˛"˝322!""3DUffeUT˛C˝322!˛Í¸!!"3C2!#fvwwàá˝àıòô˛òô˛ò˛ôòôòôò¸ô˛òôò˛ôòôò˛ôòôô¡´™´™´˚™ö™öö˘™ö™ö™ööôö˛ôöôöôôâ˛ôâ˛ôâôâô˛âô˜â人ª™˝´ª´˛ª´ª˜º˝Ãªª˛´$ºª´™ôàwfUT3#""#4VVfUD3"#4EVVfUED4˛3#3""¸#""$Vgww˝x˚à˛âàÚâà˚âôâôÙâôâôôû™˛∫™∫˝™©¯™©˙™˝©ôô˝©˛ô©ıô¯òôòöÀà¸∫¸ªÀª˘ÀÃËËÃÀÀ˛ª
  1278. ÀÃÀ∫©òáveUC˛24UgàááuS21"23DUUffeUTC˛32322˝!˘˛"!4fvwwá˚àòà˚òôòòô˘òô˙òôòôòô˛ò˙ôò˝ô©ú™´˛™´˛™ˆö™¸öôöÒôâô˛âô˛âôââàâàà¸âõºÃª˛™¸´ª´ª´ºª¯º˝Ãªª´ººÃêôàwwfUC3"$EEV˛wfU3"#44EVVfVUED˛3#˛"˛Îˆ˝5Vggw˛xàx˚àâàà¸âààÓâà˚âô¸â˛ô´™˛∫™∫˛™©™©™©™©¸™©©™¸©ô©˙ô©˝ô©¯ôòô˙ò˛ôöÀÃÀ˝∫˚ªÀª¸ÀÃ˛À(ÃËËÃÀÀªÀÃËÀπòáwveC22DTDUfwvvdC2!"33DDU˛feUT˛C˛2""!!€!!#Ef˛w˜àòòô˛òôòô¸òô˛òô˛òôòôòô˛òô˛ò˚ôò¸ô¥¯™¯ö˛™˚ö¸ôââôâ˛ôâ˙ôâôâô¸âàà˛âà˛â人ª™™ö´™¸´ºªª¯º¸Ã˚º,ú∫ààwfUD3#4434EVVfU3""##344EVffUED433#""˛˛˛˛˛˛˛˛˛ $Efgww˝x˘àâà¸âàˆâàÛâ    ôââàââôâôôÖ™∫˚™©™©™˝©˛™˜©˛ô©ôô©ô©©ÙôòôˆòöÀÃ˛∫™˛∫ª∫ªª˜ÀÃÀ‹˝ÃÀÃ˛ÀÃ˛À®àáveS23C˛3CDDUTC˝233DUUfveUTDCC2"2""!ÿ4Vf˛wá˜àòàflòôò˛ôò˛ô¢ö¸™ö™ö™ööôöô¸ö˛ô¸öô˚â˙ôâôâô¯â˛àâ˛à˛â人ª¸™˛´¸ª´ºª˚º¸ÃººÃººÃúª©àxwfD2"#˛"˛#4D3˚# 45UVfUUTDD3#˛"Ͳ˜4Vfgg˚xàx˜àââàââà˙âàâàâààââà˛âàˆâôôò˙™©™©™¸©˝™¯©ò˚ô˚©ıô˚òôòôòôöÀÃÀ∫∫™∫∫ª∫˛ª˛Àª˛ÀÃÀ˝Ã˛‹˙Ã˛À∫òáávd2""2"2"223DC3˝23CDU˛f eUTTC322""!!È˛˜ "Effwwáàáààò¸à˘òô˝ò˚ô˙òô˙òôò˛ôò¸ôò¡ö™ö™™˛ö™™˚ö™˛ö™ôöô˛ö˝ôâôâôâ˝ôö˚ô˛âô˝â˛à˙âö˛º˛™˚´ªªº˛ª˚º˙Ã˛º(Ãúªª™òwxvU3""#""""4433"##"#34EVffUEDD3#˝"¸#Efggw¸x˛àxx˛àâàâàâàâà˜âà˜âà˘âôâô˛âî˚™©™˘©™™˝©ô¸©˘ô˝©˛ô©˝ôòôòô˝òà˘òö˛À∫™™∫™∫∫˛ªÀª˘ÀÃËˢÃÀÀª∫®˛á uTC233!!"23C3˚2
  1279. 3CDUffeTTDC˝2"!Ë!˜4Ufvwwáá˜àıòôòôÚòô˛òôò˛ôò¸ôظö™˚öôöôô¸öôâôôö˝ô˛âôââ˙ôââôâôâô˝â˝àââ˝àâöºªª´ö˝™´´˘ªºª˝º˚øº˝ªôàxwfeDC4C""#33#¸"#34EVVUED43##""Ͳ˘4F˛gw˝xàxàxàxxˆàâà¸âàâ˛àâàà˛âààâà˚âôâôâôâôǸ™˜©ô˚©ô˝©ˆô©©Ùô¯òôòòö˛À∫∫™∫™∫∫˛ªÀÀª˝ÀÃÃÀ˛Ã‹Ã‹˙ÃÀÀª∫©òáwwveTTC2!""33C22"˝2
  1280. 3DUUfeUTDC3˛2!!È"!˘#Dff˝wıà˛òàÊòÙô∫
  1281. ™™ö™™ö™ööôö˛ôöôöôôöôôö˛ôöôôâô˛âôâôâ¸ôâôô˘â˝à˙â亪ª˛™´™˝´˘ª¸º¸Ã˙ºªª™ôàx˛wfUE3"˛33˝#""˛#4DEVUUDD3##""˛˛˛˛˛˛˝""˛
  1282. $EVfggw˛x¸àx˝àâàâ˙à¸âàâˆà˜âô¸â†˚™ˆ©™˛©ôô©ô˝©˜ô©ô©˚ô˘òà˘ò
  1283. öª∫ª∫∫™∫∫™∫˛ªÀªÀª˝ÀÃÀÃˢÃÀÃÀÀª∫©ááwáwveTC2""˛3¸2"˛23CUUeTTCC322"!!ϸ2"!˙DUfv˛wàáıàòàòàòàòà˙òà˝ò˝àòòà¸òôò˛ôò¸ôë˛ö™˝ö¯ôö˝ôâôâ˛ô¯âô˙âôââà˛âàâ˝à˚âàö˛´˚™˚´˝ª˚º˛Ã˙ºúºª™ôàwgwwgfU3#""##3#˙"##34EUEED3##""ϸ3"˛#EUfggwwxxàx˛à¸xâ¯à¸â¸àâ˙àâí¸™©™¯©™˝©Ôôò˙ôòô˛òôòòà˝òôòôòôô∫∫ª∫™™∫™∫¸ª˘ÀÙÃ˛Àªπòá˛wááveCC22˝3¯23DTUUTDC322""!!Í˝#C2"!˛#4UUv˛w¸àòò˚àòòàòàòàˆòà˛òàòà˝òôòôòòˆôµ™˛ö™™öô˛öôööôôöö˙ôâôâôâô˙âô˙âô˚â¸à˛âà˛âä´´ª™™ö™™´™´´ª´˛ª´˘ºÃ˜ºªªöàwwg˛wfUD3˛#33˛#¸"˛# 4DEEDD33#"˛-T3"44EUggwwxx˘àxxÙàââàââ˛àâ˚àÔâ≠©™©™™Ú©ô©¯ôò˝ôòôò˛ôòòôôòô˛òô˛ò˝à˚òö∫ª∫∫˛™∫™ª∫˝ªÀª˚À¸ÃÀÃÀÃ˛ÀÃÀÀ∫©ávv˝wveTC322˝3¯2
  1284. 3DDTTDC332"˛!ν$eS2!!""3DDUVvwwááÛàòàò˛àòà˛òà˝òàà˛òàòàòàô˛òôòôòòôò˚ô®ö™¸öôôö˛ôö˛ôö˝ôâôâ¸ôÔâàâà˛â˛àâà˛âàâàö˛´ªö˝™´™˛´¸ªÙºÃ˝ºª™ôwffgg˛w eED3#3#33#"#˛"#˛"#344DD33#""Ï$VU3""#344DEUVggww˛x˛àx˛àxàx¸àx˝àâˆàâ¸àâàÚâú™©™©™©™˝©ô˜©˝ô©˚ôòôôòòôò˛ôòôô¯òàòà˙òö˛ª∫™™˚∫˝ª¸À˚ÃÀ˛ÃÀ˛ÃÀÃÀπòávf˛wááuUT¸3C˚2"22"233DCDC322""!!ν!5fveTD˛TDDTff˝wáÎà¸ò˚à˛òà˝ò˛ôò˛ôò˛ô¸òû™˙öôôö˛ôöÒôâôÛâÔàâ˝´™ö´´™˛´ª´˝ªÓºª™àwfV˛gxwfUD3#4˛3#˙"˛33˛433˛"˛˛˛˛˛˛6fggfVUDEDEEVVggw˝xàà˛xà˛xàx˛àxàxàââ˛à˙âàâà˚âú©™˙©ô©©ô©ô©Òôòòôô¸òôòô˝ò˛àò˙àòàòàòàô™˛ª™™¸∫˝ªÀª˝ÀÃÀÃÀÃÀÃÀÃÀÃÀÃÀÀª πàveUgvwàáveTC¸3¸2˚"˛3˛C˛2"˝!Î!!FvwwvveTTDEUff˛wáá¸àá˛àáÈàòàòàòà˝òôòô˜òï˝öôö˘ôâ˙ôâô˛âô˘âà¯âàâ˘àx˘àâ™´´ª™´™´™´™´´ª´ª´ªªºª´©àfUEggxxwfUD˛3#3#3##""""#˚3#""ÏG˛gwff˛DEUVggww˘xàÒx˝àxàxàx˜à˙âà˝â˛à™™©©™¯©˛ô©ıô˛òô˝òôôòôò˝ô˛òàòàò¸à¸òàòô™∫ªª∫™˚∫¸ªÀÃÀÃÀ˛ÃÀÃÃÀÀ¸ÃÀÀ∫©òveUfwààáveT˛C3B33˝2˝"!"3233C3322""!!Ï˛!!"WwwáávuTTDVffvwwááÓàáıàòàòàòàòàà˛òôòôòô˛òô˝òஸöôö˛ôö˘ôâô˙âôÔâ˘àx˝àâ˝àâö™´´˝™´™´™´´˝ªÔºª™ôàfUUggxàáwUU˛3¸#˛""˝#33#˛"˛WgxxwfeETDVVfgwwÛxàxàxàxàà˝xàx˝àxx˝àâ˙à¯âàâ˛à¢˜©ôô©ôô˝©˜ôˆòô¯òàò˙àò˚àô™∫∫˛™∫˛™∫∫˝ªÀÀøÀÃÀÃ˛ÀÃÀÃÀÀ∫∫òáeUUgwààòwfTC˝3˛2"2!""˝!"2˛322""2!!Ï˛ !!#gwááwveUTE˛f˛wá˛àá˛àá˛àáàá¸àá˛àáıà¸òàòàÙòààîôöôôööÒô˛âô˚âàâà˙âàâàâÌàâö´´ö˛™ö˛™˛´ª´Óº™™àwfUEWgxààwfD4˛3#"#˝"˝ "##"#"""ÌgxxàwgeUD5VfggwxwÌxà˙xàxà˛xààâàâ˙àâà˝â¸àxੈ©˛ô©ô©˛ô©©˚ôòòô˚òôôòôˆòààò˛à˛ò    àòàòàò™™∫∫¸™∫∫¸ª˛ÀÃ˛ÀÃ˛ÀÃÀÃÀÃÃÀÀ∫©òÜvUUfwàòòáeT˛C23232!"˙!""¸2""˛!Ì˛"!$wà˛áveUTUff˛w˛áàáààáá˛àá¸àá˙àáàá˘àÛòô˙òàà±öô˛ö¸ôöıôâô˛âôàâàà˘âàâàââ¯àxˆà    âö™™ö™ö´´™˛´˛ªÔºªªôàwfUEVgxâàwUED33˝#""˛"#"#"""˛˛˛˛˛%gxxàwfUUEFVVgg˝wxw˜xà˛xàxà˜x¸àâàâàâ¸àâà˛âàâ˙à§˙©˝ô©˚ô©¯ô¸òô˛òôò˛ôòôòòàòÙàòàò˝àô™∫™™˝∫˝ªÀª˝ÀÃÙÀª∫©óáeeUVwxààveTDCC˝2"!"˙! ""22""!"!"!!Í!!FwàáàÜvUTTffV˛wáw˝á    àááààáàáàá¯àáàá˘àòà˙òà˛òàòà¸òàòààîôö˚ôâ¸ôââ˝ôâô˙âààâà˛âà˘âˆàx¸àx˚àâ˛ö™´´™˝´ªª˛º
  1285. ªºªºªºªºªºª˛º
  1286. ªª™©àwfVUVg˛x
  1287. gUUD4433""˛˛˛""¸ÌFhxwxwfUED˛Vg˝wÂxàx‰àõ˙©˝ô©˝ô©˚ôò¸ô˛òôôòò˛ôòôòôô¸òàò˛àò¸àò˛àòàò˛àö˛™∫∫ª∫˛ª˛ÀÃ˛ÀÃıÀ    ªª©òáveeVw˛á
  1288. veTDDC322!"¯!"˛2"!""˝!Ì!!"VààáàÜeUTTeffww˘áÂàÚòà˛òàòà˛òà®öôö˙ôöôôâôâ˚ô˙âàÒâÏàxàxä™™ö˚´ºªºª¸ºª¸ºª˛º ªºªª©àwfVeVg˛wfUDD433##"˝""˛˛Wwxxwf˛UEUVg˝wxwıxàxàxxàà¸xàxàx˘à˛â¸àâàâˆàÓôòòôòòô˛òô˝òôòô˛òô˚òààòàô™©™¸∫ªª˘ÀÃıÀ∫πòávfefvwwáveD˛C232˝!!!!"˝2!"!"!!˛Ï
  1289. !!#gwàáÜfe˛Uef˚wáw˙áààáˆàá˜à˙òà¸ò àòàòàòòààòàò§ôöıôâ˙ô˙â˛àâôà˛âàâà˛âàâ˘àx˛àx˛àxàà¸xâö˛™´™´™´˛ªººªª˛ºª˛ºªªºº¸ª#™ààffUVfwggfU4433##"""#""˛˝Ì˛gwàwffVEEFfVgg˘w˜xà˛xà¯xàxÛàâÙàâ븩ô©Ûôò˚ôòà¸ô˛òôôòòô˚ò¸àòÚàâ™∫™™˛∫ªªÀªÏÀ∫ôòÜvffvwvveeTTDC3˛2"˛! !!"!"2322"¸!Ì""$wáàÜfveUTVff˙wááà˛áÈàò˛à˛òà˛òà¸òàòàòàòà˝òíÚôâôâ˛ô¸âôââàÚâÔàxàà˝xâö˛™¸´˛ªººª¸ºªºªºªº˚ª™ôôxw˝g˛fVUUD43#3""˝"˝#"˛˛˛˛˛˛"%gxxwffUUEVfWg˚w¸xw˝x˙à˝xà˝x·à®˚©ô©ô©ô©˜ôò˛ôòô˛òôòô¯òôòòàò˘àá˛à
  1290. áàáàáàáàáàà˝™˝∫ªªÀªÃıÀª˛À    ªª∫©™©òòáw˛v˝feTTCC3˛2"!!"!˝"˛322"˛!Ï!$wáávveeUUfef˚wáw˚áàáàá˙àáàáàáàá˜àò˙àò˙àò¸àòò˝ôâ˛ôâôâôâôââ˝ôâô˚âà˙âà¸âàâ˘àÓxöö™™´™˝´
  1291. ªªºªºªºªºªº¯ª´´˝™ôàwgg˛fVUVUUDD433#"""˛"#˛3#˛"˝Ì˛gwwgff˛U˛VgwwgwgwwÁxà˛xàx˙àx¸àxx˜à•˝©ô©©ôô˝©¸ô©©˛ô˛òôòôòôòô˙òô˘òÛàáàà˛áàà©™™∫™˛∫ªªÌÀªÀ¸∫©áwwvfvf˝eUTTCC3¸2"23CD˛C˛2!!Ï!"$wááwfveUUfeg˙wááàáàáàá˙àá˛àá˛àá˜à˛òààò˛àòò˛àòàòò˝àòòãöÛôâ˚ôâ˛àâ˜àx˛àÛxöö™´™˝´˚ª¸ºˆªºª˛´ ™™àxwgffVVUVU˛EDD˛3#"˛#
  1292. 34DE43##"¸˛gwwvff˛UfUgg˚wxw˛xwÊx˘àxÛàââñ˛©Óôòôòôòòô˛òôòòô˘òàò˛àòàò˜àáàáà˛á    àáö©™™∫∫ª∫˝ª˚ÀÃÃÙÀ)∫ªª∫∫©àávvfvfeUeUUTTDTDDC3233DUeeTCC22!!Í!$wáávfveUeeff˙wáw¯á¸à¸áà˙áàáıàò¯àòà˛òö˝ô    âôâôâôâôâô˛âôÚâô˛âôââààâàâ¯àxàxàxàà¸xw˝xä˛ö˚´˚ª˝ºúº˛ª¸º¸ª´™öàwwffgfVVfVUED˝ED4DDEVgfeUD3#"˛ÏgwwfgfeUUVV˛gÛw¯xw˛xw˜xàxx˜àxx¯àâ≥ôô©ˆôòò¸ôòô˛ò ôòôòôòôòôòôòô˛òô˝òàòÛà˝áààáàô˛™∫∫˝ªÀªªÀÀÃÀ˝Ã‹ÃÃÀ˛ÃÀÃËÀÃ˛Àª∫òáw˝áwávveTDTCTCDDUTUUgwveTCC2˛!Í!!$wáwfvvefeff˚wá˛w˛áw˝á¸àáàáàáá˝àáàá˜àò˙àò˙àòòôòû˝ôââôâôâôÔâà˙âàâàâà˛â˜àxàxàxà˜xäöö™™˝´˛ª´ª˝º˘Ãºº˚úºªª∫ôâàxàwwgfUUD¸3##$44DDEggfUD3#"˛˛˛˛˛gwggfgUU˛Vgg˘wxwx˛wÂx˛àxààxˆà˝â¢˝ôò¸ô¯òôÎòàòòààò˛àòààá¸àáà¯áâ˝™∫ª∫˝ªÀªÀÀ˝Ã˛‹Ã‹ÀÃÀÃÀÃÀÀªÀª∫©©ôòáwwvffeUTC˛3233233C324fvveTC22!Ͳ!!$wávwvveUeefv˜w áwáwááàáàáàáà˛áàáàáà¸áàáàá˛àáÔà˛òìôôâôâôâ˛ôâôàˆâàâàââ˝àâàâÎàxà˝xw˚xyö™ö´™´´ª´ª´ºª¸ºÃúºÃ˘ºª´™™ôàâàxwggUVVUE433¸#"˛# "#EVfUUD3""βgwggwfUEVUV˛gwg˜wxwÂxàx¯àx˚à˛âë©©¸ôò¸ô˛ò˝ôËò˛àòÙàáá˛àá˝à˝™∫˙ªÀ¸Ã‹˚ÃÀÃÀÃ˛À∫™©òòàòàáwweefeTC¸23˛2322DffeTTC21!Í!$wáwxvveVeef˜wáw¸áàáá˙àáààáàà˝áÙàòàò˙àòà˝ò®˝ôââôâ¸ô˙âôàâ¸àâ˛àâàâàâàâ˙àx˚àxà˘xw˘xöö™™˚´ªª¸º˝Ã˘ºªºªªö™òàx˛àwgeUVU43˘#$"$EVUDD3#"˛
  1293. gwwxgeU˝V˝g˛wg˚wxwÒxà¯xàxˆàxàx˚àâ⣩ˆôòô˛òôôòòô˛òô˜òàòàòàòıàá˚à˚á˛àáà˛™∫∫ª∫˛ª¸À˝Ã‹ÃÃÀ˛Ã˛ÀÃÀÀ∫∫©©ò˛àá˛veUTC˚3    22"!"3˛UTDC22!È
  1294. !$wwáwveT˝fvıwáw˝áààááàáàá˛àáà˙áàáàáˆàá˝àò¸àòïôôâôâôâôâ˛ôÛâàââà˝âàâàâ˜àx˛à˜x˛wxw˛xwxä™ö™™˝´˝ª˚ºúºª˙º˛ª´™ôààxxw˛fUUEC˝3#3""˛#4EUDD3""Í ggwwvUEV˛f˛g˜wx˛wxwˆxw˛xwxà˚x˙àÅÙô˛ò˝ôòòôÒòàòàòàıáö˛™    ∫∫ª∫ªªÀªÀÀ˚Ã˚ÀÃ˚À∫∫™òòàáwvveeTTDC3C32"!!¸
  1295. !24TUTDC2"!Í˝$˛wáveUffvvÛw˘áà˛áàáà˘áwàááààáÔàòàòò∂˛ôâô˛â˛ôâôÛâàâà˛âàâàâıàxàx¸àxàxx˝w˝xwxx丙˛´˝ª¸ºÃ˝ºªª˙ºªª™öôààwvffUUDD33#""˛˛"$DEDD3#"˛˛˛˛˛˛$fgwweUEVVff˝gwgwgˆwxxw˜x˝wxwxw˜xàxà¸xàxàxààâàôıôòô˝òôòòôòòôˆòàòàòàòÔà˝áwááà˝á♩™™∫∫ªª˛ÀªÀÀ¸ÃÙÀª∫©òòáávfeeTTCC22!"!!˚
  1296. "3DTTDC2"!È˛    $fgáweeUff˛vwvıwáw˚áàáàáà¸áww¸áw˛àá˛àá˙àá˚àòàòñâôâô¸âô˚âà˙âàâÔàx˛àx˙à˚x˝w˚xy™ö™™˝´˝ª¯º¸ªºª˛ºª´öôààwwffUUDD33˛""#44D43""Ô˝ VgwgUTUVff˚gw˛gwg˝wxwxwxwˆx˘wˆxà˙x˛àx˛à|ˆôòô˛ò˛ôòô˝òôˆòàòàòòÓà˙áààááâ™™¸∫˝ªÀÀÃÀ¸ÃˆÀª∫©òòáávfeeTTDC3322¸!¸ ""3DCC32!!β! #fwávedUVfvvÛw¸áwà¸áàáàà˜áÁà∑˛ôâôâôâô˚âà˙â àââààâàâàâàâıàx˙àxà˚xw˛xwx˛wxö˛™˛´ª´ªªˆº˛ªºªºªºªª©ôààwwgfVUUEDD33˛"¸1"##443#""VgwgeDUVgf¸gwgwg˘wxwxwÙx˛wxwxwıxà˝xààx˚àÜ˚ôò¸ôòôòôò˛ôÚòààò˛àòàòÔà˛áàáw˝áà˛™˛∫˝ª¸À˝Ã˝Àª˙À∫©òòàáávvfeeTTCC22"2!"!!˝ !!""33C322"!β#fgáveTUUvfvvwvıwÂáààáá˚àááˆàïâôâôâô˛âôâôââà˘â˝àâÌàxàxàxà˘xwxwx˙wöö˛™¸´ªª¯º¸ªº˝ª*´™ôôààwggfVUED433#""""##433"ÌVgwfUEUV˛gf˜gwxxwx˛wx¸w˚xàÙxàx˛àäÙô˛ò˝ô¸òà˛òà¸òà˝òààòÓà˙áw˛áä™™∫™∫∫˛ª¸À˛ÃÙÀª∫©òòààwvfeeUTTCC22""2!¸!˛"3C322!!Ì˛#fwvv˛Uef˝v˛wv˘w˛áwá˛wˆáw¸á˛wààááÌà¢ô˛âôâôâôâô˙âôââà˛âÈà˛xà˜x˘wxxyö˛™´´ª˛´ºª¯º¸ªº˝ª™öôâàxwwffVUUDD4#˝"˛˛˛    "#43""˛˛˛˛˛¸    VfgeUEUVÙgwgıwxwwxxwx˛wx˛wxwÒxàxàxàx˝àظôòò˛ôòô˝òôôòô˝òàòòàòòàò˛àòàòÔàáàáàáà¸áwwá˛wâ˝™∫˚ªÀÀÃÀ˛Ã˝Àª¸À    ªÀªπ©©òòáá˛vfeUTDC3˝2˛!˝˛!"23C˛2!Î#˛fdT˛Uw˝vwwv¸wvıwá˛wáw˚áw˙á    àáàáàáàáàá˛àá¸àá˛àÄôââô˛âôÚâËàxàxàıx¯wyö˛™¸´ªª˜º˝ªº˝ª™©ôôààxw¸fUDD33"#˛"˝"˛#""̸    VffEEUUVÒg˛wg¸wg˚wx¸wx˛wxwÔxàxàxàxxè¸ôò¸ôòô˛ò¸ô˘òàòàòàòà˛òàòàòÓà˙á
  1297. wwááà™™∫™∫∫˛ª˛ÀÃÀ˛ÃÀØÀ
  1298. ª∫©©ô©òòávf˛veTTC33˛2˛!˝!!""¸2"!Í#ffe˝UfwwvÌwá¸w˛áwáw˜áàá˙àáàáàá˜à™ôâôâô¸âô˙âô˝âàâÎàx˛à¸xà˚xwx˙wxx˛ö™´™´´ªª¯ºªººªªº˝ª´™™ôâöòàw˛fgfUUDD33#˛"(#2#""˛VVUE˛Ugf˜gw˛g¸wgÔwxwxwxwÛxàxàxàà˝x†˜ô˙òôô˚òààòàòàòàòàòàòàòàòÒàáàáà˛áww˛á˛wáô˛™∫∫˝ª˛ÀÃÀÃÀØÀªª∫™ôô©ôàávffvfeUTDC322"˘!
  1299. !!""22""!Ì˛!"VeT˛Uefw˛vwvwvwvÌwá˛w¯áw˝á¸àáàá¸àá˛àááààzôô˛âô˘âà˙â¸àâÔàx˛àÙxˆwyö˝™´ª´ªªºª¯º˚ª ´ª™™ôôöôàwfVV˛fUDD43#˛"¯##""Ó˛    FUEUUVVfÚgww˙gwgwxà˙xà¢ôò˙ôòô¸ò˛ôòô˝òà˚òààò˛àòàà˛òààòÛà˝áw˛áwáwááà©™™∫∫ª∫ª¸À˛ÃÀÃÀÃ˙À    ªª∫©ôô©©òá¸feeTTCC322""!!"¸!""˛2""!!!Ò¸!"˛U    eeffvvwvwvÁwáwáwáw˘áà˛á˙àá˛àá˘àÇô¸âôâô˝âà¯â¸àâÔàxàÚx˘wxwx˛ö˝´˝ªˆºª˛ºªª´´™˝öòwfVfVfUUDD433#"""˛˛˝"˛˝˛˛˛
  1300. ˛EUUVfÚgw˜gwgÔwÈx™òôò¸ô˛òô¸ò˛ô¸òà˚ò˛àò¸àòàò˘àáàá˛à˚á˛wáw˛á˛wö©˛™∫∫ªª˛ÀÃ˛ÀÃ˘ÀªÀªª∫∫©™©™òávfeUeeTTDC3322˝"˙!    2"2""!!Î!"DD˛U˛f˘vwvwvwvw˛vwvwvÔwáwáw˝áàáàáà¸áà˛áàáàáàáà}ô˝âô˘âà˚âàx¸àxààxxà˜xwxÙwâöö˛™˛´ªª˜ºª˛º˝ª˚™ôàwff˝U    ED433""""˛˝˛"¸Ú˝    4EUEUV˚fÍgwwgwgÛwxw˙xwÙx¨¯ôòôòòô˛òôô˝òàòà˛òàòàòàò¸àòàò˘àáàáàáà˛áà˝áw¸á˝w    â™™∫∫ª∫∫ªª˛ÀøÀÃÀÃ˙À
  1301. ª∫∫™ª™©áávf˛e UTTCC3322"2!"˛!
  1302. "!""!""!!!Ó¸    "4UTUUff˚vwv˛wv˘wvvwvıwáwá˛wáwÏáààáààõô˙âô¸âà˝â˛àâıàx˙àxààx¸w˛x˝wxö˛™´´ª´´ªºª¸´ ™ôàxffUUEEDED˛3##˛"˚""˛"45EUV˛fgffˆgw˜gw˛gw˛gÛwxwxw˛xw˝xw¯xÅôôòôòô˘òà¸òàòÈàá˙àáàà˛áàà˝áww˝á˛wxô™™˝∫˛ªÔÀ˛ª˛∫©®ávfeUU˛T˛C˚2""!˝"¸!!Í"2#UU˝f˘vwv¸wvw˙vwvıwáwˆáwˆáààáàáàêâôà˝â˛àâààâ˛àâàâ¸àâ˜àxàx˙àÒx˙wx˝wgxäö˛™˝´ª˝ºª˜º¸ª˝´öôxvfUUE˛D433˚#""""˛˛¸$U˛V˝fˆgw˝gf˜gwggˆwxwx¸wxw¸xw¯xû˛ô˛òôÔòàòà¸òàò˛àòàòà˛ò˘àá¸àáàááwá¸wá¸wâ™™∫∫™˝ª˘ÀÃÀÃ˘À˛ª∫∫©òávfUTDTC3CC3223˝2¸"¸!!Í    Ue˝fvvw˛v¯wvwvwvwv˜wá¸wáw˛áw˛á    wáwááààááà˛á¸à˛áä¯âàˆâàâ¸àâàâˆàâàâààxàıxwx˜wgwwyö˝™´´˛ª´˛ª˘º¯ª ™öôàwfVUTDD4˚3˝#˝"˝¸˛˛˛˛ 5U˛V˛f˜gww˜g˛wgw˛gÌw˙xw˘x°òôòô˛òôÔò˝àòò˛àò˛àò˛à òààáàáàáàáàáà˚áıwvwxô˝™∫˝ªÀ˛ª˝ÀÃÃ˛ÀªÀªÀªÀª∫©©òàvfeeDDCD¸3C˚2"˙!˛!Ê2 Ue˝f˘vwv˛wvwvw˛vwv˛wv˚wá¸wáwáwwáá¸w˜áàáàáàááyÏâàxàx¸à˚xw˛xwx˚wgwgg˘wgäö™™˝´¯ªººˆª ´öôâàwfVUEC34˚3##"#˝"˜˝Ô425¸V˚f˚gwˆgw˛gwgwgÌwxw˛x˛w¸xwxò¯ô˙òôòôòôòòà˛òàòà˛ò˙àò˘àáà˚áw˛áwá˘wá¸w
  1303. ô©™∫∫ª∫ªªÀªÓÀ    ∫™©òàáveUT˚C 3C332322""!"¸!˝˛˛    ET14ee˛fvf˙v¸wvw¸v˜wáwáwá¸wáwá¸w˝á˛à¸áàáà˛á≠ôâô˛âô˝âàâàâà¸âàâÚàx¸àÙx˛wx¸wgwwg˙wyöö™™´´˚ªº˛ªºªºªºªºªº˝ª™öôààwfUUD4434˙3˛#""˝˛˛˛5U2EU˛V˙f¸gw˛g¸fgg˙wgwg˛w˚xwxw˛xwxxÄò˛ôòôôÚòàò˙àòàòıàÛáwxô˛™∫∫˛ªÀªÀªÚÀ
  1304. ª∫©©òàvveUD¸C˛32323321!""!!!!!!Á ETR$Uee˛fvfvf˛v˝w¯vıwáwwá˝w˛á¸wáw˜áà˝áëıâà˛âàâàâÛàxàÛxw˛xwxwx˘wg˛wg˛wgwgxäö˛™´´ª´ªªºª ´©ôààvfVUDD3D˝3#˛3#3"""¸Ì˛ 5ECEUUVV¸fˆgff¯gwgwg˝w˛x˛wxwwxxwxwxÜôòô˛òô˛òôıòÁàá˛àáà˚áwáÚwⲙ˚ªÀªÒÀª∫πòòàÜfeeTTDCC˚323˛2"!!˛!˛!Í EUT25Ue˝fvfvfwv¸wvw˝vˆwáwáw¸áwáwáá˚w˝áàˆáØ˝âà˚âàâ˝àâ˘àxxàà˛xàà˛xàxàxàÛx¯w˚g˚wy˛ö˚´ªªºªºªºª˛ºªºªºªºª´´©ààxwfVUUED˚3˝#˛"¸˛ ˛˛˛ 5UE3EU˛V¸f˚gffgff¸gw˝gwwg˝wxx¸wx˘wˆxwxwxw†òô˘òà˛òàòàòà˛òıàá˛àá˙à˛áà˚áw˛á˜wvwv˚wô™™∫ª∫˝ª˛Àª˙Àª˝À
  1305. ∫∫ª©òààwfee˛TC¸3˙2!!˛!!˛!˛!Ô˛    5dTC EUe˙fvwvwvw˙vwvwvwv˘wáw¸áw˛á˚w˛áà˜áww°àâàâàââÌàxààx˛àxàxàxàxà˜xw˛x˘w˛gw¯gwgâöö™´™¯ª˚ºªºº˛ª™´ôâàxwfVVDED4˝3˝#"#""˛Ò
  1306. 6UDD %˛U˛VfVf¯gff˜gwg˚wx¸wxwx¯w˛xwxwxwxx˛wòÓòàòàò˛àò¯àò˜àáàáàáà¸áÙwv˛wv˛wà˛™∫∫˛ªÀ∫∫©©òààávveUTTCD332323˛2˛"!!˜!!Ò"6eTT UUe˝fvfwv˛wvw˝vwwvıw˛áwáw˛áw¸áwáwáw¯áà˛áw≤˛âà˛âàâàâàâ˝àââ˘àxààx˚àxàxàıxÛwgw˙gwggxôöö™˛´˙ªºª˛ºª˛ºªª´™ôôààxwggVUED443˛#    3#3#"""˛˛    ˛6fTD EUU˝Vff¯gf˘gwgg¯wx¸wx¯w˝x˝w˛x˛w°òô˜òà˛òàòòÓàá˛àáà¸áà˝á¸wá˘wvw˛v˛wv˛wôô©™™∫∫˛ªÀÀªıÀ∫©˛òàááwvfe˛TC332˝322""!"!!!!˛ÌFvdC0˛5U˛e˛fvfÛv¸wv˚wáwá˛wáw¸áwá¸w˝á˛w˝áwá§˝âàâÌà˛xàxàxàxxàÙxw˛xıw˝gf¯gyöö™™˝´˝ªº˛ª
  1307. ºªªººªºª™ôô˛àwwgfVU˛D33¸#    3"""˝ ˛Ù6fT4!˛ EUUVVffgfgg˚fgfgf˛gww˚gˆwxwxˆw
  1308. xwxwwxxwwxw≤òòô˝òàòà˛òàò˛àòàòÎàáàáà˙áàááwá˚wv˛wvwvwvwvwvwwxô™©™∫ª∫˛ªÀÀª˜À ª∫©ôòààáwvwfe˛TC˙32˛"¸!!˛!!Ì6wdC1˛˛Ue˝f˛vf˙vfvvwv˛wv˘wáwáwáwáw˛áwáwáwá˛wáwáwáw˚á∞˝âÛàâ˚àxà˛xà˛xàxàÒxwx˚wgwgwâöö™™˝´˛ª˝ºª¸ºªª™™öòxxwwggfUUEDD33¸#˝"˛˛˛˛˛˛&wT42EEU˛Vff˝g˝fg˛f˝g˛w˚gwwg˝wx˛wx˛wx˚wg˚w˛xwxwè˜òàòàòò˝àòÌà˛áàáàˆá¯wvwvw¯vwwâ©˝™∫∫¸ª˜Àª∫©©òàááw˛veeTTDC23˙2""¸! !!!!!Ï5wdDB˝4˛Ue˛fvvfvfvf˛vf˝v˛w¸vwv˘wáwwááwwááˆw˙áñ˝âÔà¸xàxà˛xà¸xà˝xwxwxÙwˆgf˘gxôöö™ö™˛´ª´´ª˛º ªªººªª´™ööàà˛wg˛fUED43##3˛#˚"˝˛˝˛Ú%gT43 ˛EEUV˜fg¸f˛gw˜gwg˘wxÚwxwxwxww¢Úòàòà˛ò˜àá˛àá˛àáàá˛à˛áà˝áwáwá˚wv˛wvwvwvw˛v˛wvwx©©˝™´∫ª∫ªª˜Àª∫™©òàááwvvfveTDCC32CB322"˛2""¸!!!˛˝Ô%wuCC0˛˛U˛fÚv¸wvwvw˛v˜w˙áwáwwáwwáw˘á¢˙âà˛â˛àâ˙àÛxàÛxwwxx˙wÓghöö˚™˝´˝ª¸ºªª™™ôàxx˛w gffVUDD33#43˚#""˛˛˝%%wfT4!EEUVVffgff˛gfggfgf¯gf˚gwg˚wxwx˘wx˛w˚xwxx¨òô˜òàò¸àò˚àá˙àá˛àá˛àáààááà˘á˚wv¸wvw˝v fvvwvwwx©©™∫¸™∫ªªÀÀª˙Àª∫™©òàááwwvvffTTCC˛3C33˚2¸!!!!˝Ó$áuSC0˝DTUU˝f˛vf˛vf˝v¸w˛vwvwvwv¯wááwá˛wá˙w˚áàááä˚â˛àâıà˛xà˛xàxàxàÛxwx˛wx˙w˜gf¯gi˛ö´¸™˝´˚ªºªª´´öôàx˝wgwVfUD4¸3#33#˛"#""˝¸gvD4 ˝$EUUVVıfgfgwwgwwxÚwxw˙x§òòô˚òàòàòò˝àòÔàá¸à˛áà˚áw˛á˚wvwv˛w¸v˛wv˛wx™©™™˘∫ªª˚Àªª˛∫©òáá˝wvffeTDCCD˛C3C22"˛2"2"˙!!Ì#wÜdC1˝$TUe˛fÛvwv˛wvwvwvıwáwáwá˛wá¸wáwáwàá˛àáï¸âàâ˛àâàâ˜àÁxwx˘wgwÓg    whö™öö´™´™˛´™´´˝ªºª˛´™™ôàwxwgwxwffUDD˚433#""#""#"˛˛˛˛˛˛hwT3!˛DEUUVfgˆfgwgg¸wxÛw˘xßıò˛àòàòıàá˛àáàáàáàá˛àáà˝áıwvwvw˜v
  1309. fvvwwx™™©™™˘∫˛ªÀÀªª˝∫™®à˛áwwávfeUTC˛D˛C33¸2"2˝!"˝!!Ó#wádC1˝DUUe˛f¸vf¸vfw˛vw˛vwvwvwvwv˙wáá˙wáwá˝w¸áàáàé¸âààâàâıàÈxıwgw˚gfg¸fggff˝ghööôöö™™¸´™˛´˛ª¸´öôà˛x    wxwgVfUUD4˛D44˛3##"#˛"¸¸ÓhwT4!˝4EEUVÛfgf˛g˛fıgwg¯wgwg˚wxw˛xwxùôôòòô˝òà¸òà˛òÌàá¸à˝áwáÚw˚vwvw¸vwx˛™©™™∫™˛∫™∫∫˛ªÀª˛∫™™©òòààááwávvfeU˛T˝DCC3323˝2"2"2"!!˛!!Ï"hád31˝ DTUUffvfvfvf¸vf˝vw˚vwvv˜wáÙwáw˘áõ¸âàâ˛àâıàx˛àxàxàxàıx˜wg˛w˜gfgfgf˛gf˛gyö™˝ö™™ˆ´˛™ö™ôâàxxwwxwgffU˛EDD4D44˛3"#3#˘"˛*Xwd32DEUVVÛf¸g˝fıg˜wg˙w˙xû˜òà¸ò˛àò˜àá˛àá˛àáàáà˚áwáıwvwvwˆvwvvwⲙ©©˝™∫ªª∫∫™∫∫ª∫∫™π™™ôòò˛á
  1310. wáávffeUTUT˛DCC3C2˛3˘2"!!"!!Î"gátC2¸DTUU˘fvfvf¯vf˝vwwvvwvwv˝wáÛw¸áàááê˙âÛàÓxw˝x˙wgwgwgw¯gfggffgff¸ghäö˛™ö™ö™™˛´˝™ö˛™ö™ôöâ˛à wxwxwwffUUEU¸D4˚3##¸"#"˛˛ÎHwd3!¸4DEUVVfVÌfgf˛g˛fggwg¯wg˚wx˛wxw˛xõˆòà˛òàòàò˘àá¸àá˛àáà˛áàà˛áwáwá˜wvw˛vwÙvàˆ™∫∫ª∫∫™∫™™∫™™©ôôòòàáw˛áwvfee˛UTTDT¸C˛3˘2!"!!È"WáuC1˚TTUU˝f˛vf˛vfvfıvwvwvwv˝wáˆwá˛w˝áààá᧲âà˛âıàxàxàxàÛxwxwxx˙wg˛wg˛w¯gf¸gf¸gy´˝™˝ö´™´™´˙™ööô˝âàwg˝wgff˝UEU˝D34˝3##˛"#"˛˛˛˛˛˛Wwe3!˛4DEU˝VÌfıg˛wg¸wg˚wx˛w˝xã˘ò˛àò˜àá¸àáàáà˘áwáwáÒw¸vwÙvwöÀ˛™˝©™™∫™˝∫™∫™™˝©òôôòàááv˛wvvff˛eU˝TDDCD3C˝2˝"˚!È#Wát30˙3T˛U˘fv˛fvf˛vfvfvf˜vwvwááw˛áwàï˛àâàâ˜àx˛àÓxwwx¯wgwwgwgw˜g¯fggx´ª˝™˝ö™´™˛´˝™˛öôô˛âààxwgwgwggffUVUUEEDE˛D433##"""˛β#Wwd#˙4DEU˚VfV˝fgÙfg˝f¸gwwggwgw˛g˜wxwxãô˘ò¸àò˛àò˘àá˛àıáwá˛wá˜wvw˛vwÙvwâªÀ∫˛™∫˝™∫™˙∫™˝©ôôò˛àáá˝w˛vfeeUe˛UTTCCDC22˝"˛!!!Ë!3gvc2 ˙4T˛Ue˙fvfvf˙vfıvÛwá˛w˘á¨˛âàâÛàxààxxàıx˛wx˜wgwgwgwˆg˘fgfgyªª™ö™ö™ö™ö™ö™™´´™™´˛™öö˛ôààxàwxwg˚fVV¸U˛D443#""¸0$WfC#DEUU˝VÎfgf˚gwgw˝gwwg˚wx˛wxwxwó˝òà˛òÛàá˛àáà˛áà˚áÒwv˛w¸vwvw˙vf˝vwäªÀ∫˛™©˛™©™˙∫˛™ ©©™©ôòòàááwá˚vffeeUUTTDDCC3322"˘!Ë4fvB2¯DDTUefe˝fvfvf¸vf˛vf˙vf˝v¸wvıwáwáwwáwç¯àxààxàxxàà˛xà˘xw˛xwx˜wggwwÒgıfgä´º˝™öö™˝ö¯™öö™ôââàà˛xwf˛gf˝UEE˛D443˛#""˛"˝È5Wf2"˜$DDEU˝VfVÒfg˝fgff˜gwggwwg˜wx£˛òà˛òàòàòÒàáà˘áwáwáÒwvwvwvwvw˝vf˛v    fvfvfwõªÀ∫˘™©™™∫™˛∫™™∫™™˛©òôòò˛áwwvfve¸TDDCC3322˝"!"¸!È#Egu22˜DT˛U˘fvf¸v˛fvf˛vf˝vwv¸wv˛wv˘wá˛wáwáwüààâ˚àxàxà˙xà˜xwxw˛x˘wg¸wgwgwgwˆg˜fhõ´º∫™´ö˛™¸ö˜™öôôââàà˝w˛fVUE˝D44˝3˚"˛˛˛˛˛˛#Ege""˛˛4DEEUU˛V¸fVÙf˛gf¸g˛w˙gÛwöàòàòà˛ò˜àá˛àá˛à˚áw¸á˘wv¯w vwvwvwvwvvfvf˛v˛fvfvx∫ªÃ˚∫™∫©™™˛∫™∫˝™∫˛©òôòòááw˛vfveUTTDD˝C3¸2˛"˙!Ë"3Vve1!ˆ#DTTUUee˜fv˙fvf˘vwvw˛vwvÛwááwu˘àxà¸xàxàıxwxÛwgwgwÛg˜f    Vffgy´¨º∫´˚™˛ö˜™ööô˛â
  1311. àxwwgffVfUU˝D4˛3˝#˛"˛¸È$Vfe"ˆ4D˛EU˙V˙fV˚fÌgwgˆwé˛òà˛òÓà¯áwá˛wáwáÛwvwvwvw˚vfvfv˛fvwâ∫ºÃ ˝∫™∫∫™©˛™∫∫˘™©ôòôòááwwvffeeTT˛D˛C23˛2 ""2""!""!!!Ë"Efvd!ı3D˝UeeÛfvfvf˚vwvÔwá¸wáw´¯àxàxàxàà˝xà¯xwwx˛wx˘w˛gwgwgw˜gfgıfg䴺ê˛´¸™ö˙™ ö™™´ö™ôââààx˛w    gffUUED4DD˝3˛#¸"¸˛˛/#EVfB"4DEE˛U˘V¸fV˚f˘gwgw˛g˛wg˛wg˜wåàò˛àòÒàá˛à¯áwáá˛wáıwvw˛vw˘v¯fwô´ÃÀ ˙∫¸™∫∫˛™©™™˛©òòàà˛ávvffeTUT˛DCC˝3˝2""!"!"˛!Í"3Ufe2!Ù3DTT˝UeUeeÛfvfvw˝vwv˛wvÓwÑ˘àxàxàÒxwxÒwgwgwÙg˙f VfVfVfVgä´ººª˛´˝™˛ö™ö´™™öö™™ööôôâààx˝wffVVEE˛D4˝3##˝"˘Î4VfTÛ44EE˙UVU˝Vf¸V˛f˝gfˆgwgÛwë˚àòÛàá˛àáàà˙áwáÒwv˛wvwvw¸vˆfwö´ÃÀÀ˛∫ª∫∫˝™©™™∫∫˛™©™™©ôòòààááwvvf˛eTT˛DCC˛3˛2˝"!"˝!˝Î!3EfvR" Ú"3DT¸UeUUeeıfvww˝v˛wvv˙wv˜wávü˙àxxàÔxw˚gww˙g˙f˛Vff˝V fhöõººª´´™´™´˝™ö™ö™™ö™™ôööôôâààxxwwffVVUU¸D433˝#˚"˛˛˛˛˛˛˛ $Efe2˛˛˛44˛E˙U˘VfVff¸gffg˙wgò˜àáàáàáàáàáàáàáà˚áwáÛwv¸wvwvw˝v¸fv˚f˛effxô´˛Àª˚∫™∫©™∫™˛©™˛©™©ôòòààáwwvvfeeUTDTT˛C˛3˛2˛"2"˝!Í"4Vfc!!Ô3D˛T˙Ufe˛fe¸f˛vw¸vw¸vwvÚwîxà˛xàxàÌxwx˘wg˛wgwÛg˝fVfVf˚V˛UVWxô´ººª¸´˝™öö™öö™˝ö
  1312. ôöôââàxxwwg˛fVUEE˛D4˝3##"#¸"˛˛Ï    #5Vf2Ô44DD˚EUU˘Vff˛g˝fgg˛fÙgwwgwgwÇÎàááàà˙áÛwvwvwvw˛vw˝vfvfv˚f˛efefàôªÃÃÀ˛ª∫∫ª∫ˆ™˝© òôòààáwwvvfe˛U˛TCDC˛3˛2""˛2"˝!Ì    !"3Ufu1Ï3D˚T˛U˛efe˝fÛvwvÒw±˛àxàx¸àxàxÚwıg¯f¸V˝U36yö˝ºª¸´˝™˛ö™ö™ööôöôôââààxxwwfgfVUUEEDD34˝3##˛"#˛">#4VfT#˝D˛E˝U¸V¸f    gffggffgff˘g    wgwgwgwgwwíıàáàáàáàáà˜áwáÒwvwvw¯v¸f˝eUeUTB!6â™ÃÀÃÀÀ˝ª∫∫™∫™™©˛™˛©
  1313. ™©©ôôòòààáá˝ve˛UTTDC˝3˝2
  1314. "2"2""!!Ì !"3EfvR!Ë3CDD˝T˛U˛e˚f˝vwvvfvf˝vwvwvˆwûààx˛àxàxàxà¸xà˚xwxx˜wggwÚgffg˙fV˚UC!Gâõ˝ºª´ª˝´ö˝™öö™˛ö™ôô˛â˛àwwggffVUUEEDD4˛3˛#¸""˛˛Ù#4EVf2Ó˙44DD˝EUEVUVUVV˚fg˙fÛg˛w©Ìàááà˘áÛwv˛wv˛w˙vffvffef˛eUC!"gà´ÀÃÀÃÀÀ˝ª∫∫˛™∫˛©™™˛©ôôòôò˛àáwvvf˛eTUTTD˛C33˝2    "2""!!˙˝˝    !"33EVvd1Ì!˚3CDDTDT˛Ueefe˝f˛vf˛vf¸vwwvıwµ˛à    xàxàxàxàxà˘xw˚x˙wgwgw˛gw˜gfgg˙f˝V˛U3"$hâ´˝º˚ª´¸™˘öôôââ˝àwwg˛f˛UEDD4˛3#3"#˝"˛˝˛˛¸#4EVfC˛˛˛˛˛˛#44˝DEE˝UVVfV˜fÛgwgwg®˜à    áàáàáàáàáà˜áwáwwv˛wvwvwvwvwvwvwvw˚v˚f˝eTB!""2"4wâ´ÀÀÃÀÀ˛ªÀª˛∫˝™©™˙©ô˛òàáávwvf˛eUTTDDCC33˝2""˝!¸!ˆ!"33DVvvR ‚    "CCDDTDUT˝Ufe˚fvf˚vw˛vw˛v˙wùààxàxàxàÛxwx˘wgw¸gwgw˜g˘f˝VUVUE2#""%xâ´´ºÃºº˝ª˛´™ö™™öö™˝öôöôôââààxwwggfVUUEEDD4˝3#˛"˝˝ı˛ "#4EVge2ϯ#˝4DDEEUU˚V˚fgffÚgwùòàááà˘áwwáˆwv˛wv˛w˘v˝feeUT2!"32"5à⪪˛Ã˝À˝ª∫˘™˚©ô˛òàáá˛vfe˛UTT˝C2322""!"!"!!¯˛ !""3DUUvvt!Ï!"!˜3CCDDTD˝Uee˚f˝vwvwv˙wv˚wæ˛àxààÔx¯w˛gwwggwgw¯gfg˙fVV˛U2#33"#Fxy´ªºÃ˛ºªºªª´´˛™˝ö™ö™˝öôââààx˛wgffUUEEDD43433##""¸˝˛¸5#4EUVggS#3˛4D˛EUVU˝V¸fgww´˚àá˛àá˛àáàáàáà¸áwwáwáÛwvw˚vf˛vfv˝feeTB!˛3    22!"3fàà´À˝Ã˚À∫∫™∫˝™©™˚©ôòòàááwwffeeUTT˛D    CC3322""!"˝!˝˚˛!!"!""3DUUfwvB⁄"3CCDDTT˛Uee˙fvvwv˛wv˛w˛v¸w©xààxà˝xà˝xw˛xwxwxwx˜wgwgwgwgw˙gfg¯fVVUU2"¸#""#Vxâ´ª˙º˛ª´˛™ö˛™ö™˝öôôâôààx˛w˛fUUEDD4D˛3#˝""˛˝¸˛ "#4DUVgge!ÍÚ3344DDEE˛U˛V˚fÛgwgwû¸àá˙àá˛àáàà¸áwáwáwáÛwvw˜vfvffeeC"3322331"4fàà´ÀÃÀ˛Ã¸Àª˛∫˙™¸©ôòòààáw˛vfeeTT˛D˛C˝2""˝!!!!˙˚!!˛"23DUevwvRÈ""!Ú 33CCDDTTUUe˙fvvwvwv˛wv˘w√xàà˜xw˚xwwxˆwggwıgˆfVUC"¸# 42#5gxàõªºÃ˚º˛ª ´´™™´™ö™ö™öö˝ôââààwwg˛fUUE˛D4433##""˛˛˛˝ "##4EUVgge!˛˛˛˛˛˛""˛˛˛˛
  1315. #344DEUEU¸V˝f˛gf˜gww∞˚àáàá˛à¸áà˚á˛wáwá˘w    vwvwvwvwvw˝v fvvffvffeS23˛23DC13Efwxà™Àª˛Ã˚Àªª∫∫˝™©™™©©™©©ô˛òááw˛vfeUUTDCC˝322˛"!!"¸!˙!!!˛" 233DUefvvSÈ""!Ò
  1316. "33CDDTUUee˘f˚vwvwv¸wïÏxwwx˛wx˝wgw˛gw˜gıfT3##"#4ED3#4Vggxàõª¨Ã˚ºªºªª¸™˙öôôââ˛àxwg˛f
  1317. UUEDD3433##˛"˚¸˝˛˛#    4EVVgge1È˝Ú#34DDEEUUVVfVfV¸fˆgwµ˙àá˛à    áàáàáààááà˚áwá˚wv˛wv˛wvw˘vfvfvffeC3323EeeT2"3DVvwààöªª˝Ã˚Àª¸∫™™©˛™˛©ôô˛òáávvffeeTUTC3C33˛2"!"!!!!˝˛!!˛˛!"2233DTUf˛vc Ë!!3C˛D˛Uee¸f    vfvfvvwvwv˚w¿àÈx¯wgw¯gfgffg¯f    T3##4EVfU3˛"4EVgxà䪴˛ºÃ˝ºªºªª™´™¯öôöô˛àwwg˛fUU˝D33#3##""¸˝˛"˛#3DEVfggfB˛"#"˛#344˛E˛UVVfV˙f¸gwgwg°ààá˛àáàáàáà˛áàáàááà˝áˆwvw˛vwıvfvffeC223VfveS2""3EefwwàöÀª¸Ã˚À˛∫˛™©™©™˝© ô©òòàááwvvee˛TDCC33˝2""˘!¸¸!˛" 2233DDUfvvwd1Ê232!Ì33DDTT˝Uee˚fvfvv˙wõxàÌxwx¯wÙgıfD""#EfgfUC"#4Vgfgxàä´´º˝Ãªº¸ª´´˛™öö™˛ö ôöôôâààxwwff˛UEDD˝3##˝"¸˛˛    ""˛#
  1318. 4EEVfgwfCÁ#""Ì #34DDEEUEUU˝V˝fgfggwgwgw¢ˆàáàá˙à¸áˆwvwwvvw˛vw˚vfvffdC"3EfvveTB!"DVv˝w    àâ∫™ªÃËÃÃ˚À∫ª∫˛™©™©˛™˛©ôòòááwwvfeeTTCC332322"2""!"˛!"!˚"˛!˝"233DUUffwwádAÊ!"2!Ï3CDD˛TUUee˘fvv˚w≥Ôxàxxwxx¯w˜gfgıfC"#4VgffUU2#EVggwgwxâöö¨ºÃºÃ˚ºªª´¸™˘öô˛à    wwgfVVUEDD˛3˝#˛"¸˝˝˝"##44EVggwwvT!˛˛˛˛˛˛˝˛˛˛˛˛#˛4DD˛EU˚V˛f˙g≠ààáàáàá˛à    áàáàáàáàáà¸á¯wv˛wvw˘v˘fd2"4Ufeeffd223DVfvvwwàâ∫ôªÀ‹ÃÃÀÃ˚À∫∫™™©™˛©™©™˛©òààáwvveeUUTDCC33˝2"2"2"2˚!˝!˝"2233CDTUffwwáuCÂ""2!! Ï#3˝DUTUUee¸f˛vwv˛wéÈx˚wgwˆgıfe3"$E˛UVVfC""#4EVffgwxâ™â´ººÃÃ˚º˛ª´˛™¯ö ôôààwwgfVUUE˛D33˛#˝"""¸˛"""##334EEVgg˛we2Ê##"Î 334DEDEEUU˝V˛f˚gúÏà˚áwá˜w˘vfvfv˝fT23E˛U ffweB2"3DUfv˛w
  1319. àâ∫ò´ÃËÃÃÀ˛Ã ÀÃÀÀ∫ª∫∫©™©™©˛™©™ôòààáwvveeTTD˛C23˝2"22!!"!"¸!"!""˛2˛3DDUefw˝ád0‰˛32Ê"33DDTTUU˛e˛fvfwv˝wÃààxxàxàxàıxwx˘wgwggw˚gıfU2#4EDEUggfT"4Efw˛g    wxâ™ô™¨ºÃÃ˙ºªª´´˝™˘öôâààwgffUUEDD433˝#¸""˚""˝#34DEVVgg˛x&vC#3#"˛$#44DDEEUUVVfV˛f˛gwg´˚àá˛àáà˛á˛àáàááwáwá˘wv˛w˚vfv˘f#S23TDUUfwveC!"4Ufwwvfwwàà´©™ªÃËÀÃÀøÀªª∫∫˛™©˛™©™©©òòáávvfeUTTDCC33˝2"˛2!"!˜"2233C3DUefvwáààátB‰˛"232!Ê3CDD˛TUUe˛fvfvvwvwô¯xà˘xwxwx˘w¯gffg˘f#VfVe2#44EEVggfD2#34VgeDVgwxxõ™öõººÃ˘ºªª´´™™ööô¸öôôààxwgffUEED4˛3¸#˘"˝""#"##˛34EEVfgg˛xvT!Ê"˛˛"Ê344D˛EUUVV˝f˛gúÙàáá˛àáà˝áÙwvw˝vfvfv˛fvffS3CCDVfwwveC2˛34UeS3Vwwàà´∫©™º¸ÃÀÃÃ˝Àª˛∫™©¸™˛©ôò˛ávveeTTDCC¸3˝2"˛2"2!""˝2˝3CDTUffww˛àáeC ‰"22"!!""‰3DDTT˝U˛f¸vΔàÌx˜wgwgw˝g˜f$VfVU3433EWgwfUD3#3"#4EU3#Ggwyàä´ò⨺غªª´´˛™ö™ö™ö˛ô ààxwffVUEDD4˝3##"#"#¯"#"˛#3˛4DEUVgw˝xwT2˛˛˛˛˛˛˛ 33#"˛˛˛˛˛˛34DDEEUUVV˚föààá˛àá˛à¸áà¸áwwá˜wv˛w˝v˜fS3C3DVwwveUT22""3DVeTCfwwàòâ∫òôªÛÀ∫∫™∫˛™¸©ôòàáwvfeUTDDCC3323˘2˛"2"2"2233CCDDUUffww˛àáuC ‚˛32!"‰    "3CDDUTUU˝fvfvùıxw˛xwxÛwgwgwgg˚f VfVfVfVU33#$E˛gfUUT3"#4EUVgUDWwwxày´àz´˘ºª˛ºªª´˛™˚ö˝ô
  1320. àxwwfVUED44˛3#3##""##¸"#˛"##˝4DEEVfggwàxxwT2„˛#33#!‰    344DDEEU˛V˛f´˙àáààááà˛áà˘áwáwáwá˝wvw˝vfv˘fdC33Dfwv˝fS2"4UeeffdCWwáàòà™óâª˝ÀÃÀÃÀÃ˛ÀªÀª∫∫™™©˛™©™©©òòáávveeTTDD˛C˛32323˙23233CCDTT˛Ufvw˝àáuS0„ "!""33C2 ‚3DDTTUUeeffvv’ˆxw¯x˜wgww˝g¸fVfVf˝VC3#4Vg˛fgfU3"#5EUEEUC#Wwwxâxõòy´ˆº
  1321. ªºªª´´™™ö™™˝öôâààwwfVU˛D44˛3#3˝#"#"#"#"˛#<3344EEUVVggwxxàxwT3"#""#33"˛*#4DDEEUUVVffô˚à˛áà¸áà˚áwáwá˘wvwvw˛v˙fefdC23UfvvfvwvT23C3DDTC˛D
  1322. gwwáôàö®à™ªıÀ    ªÀª∫™©™©™™˛©ô˛òááveeTDD˝C2˛3˛23˙2˛3
  1323. CDDTUeffwwá˛àáuC2·    332"2"32 fl3DDTT˛U˛fâ˚x    wxwxwxxwwxÚw˙g˝f˚V$UUD3#5VfVffwweC#33"4EUD4EVggwwyàä®xö´ˆº˝ª™™¸ö    ™ööôâààwwf˛UDD34˝3#3ı#344DEEUVfgwxxààxwD3 ·#33˚"fi44D˛EUUVõàá˛àáà˛áà¯áwwááˆwvw˛v˙feTCC24U˝fáávSC3C23DUUeTUv˛w
  1324. áâòâ©áà™ªÃÀ¸ÃÀÃ˝Àªª∫∫¸™˛© ôôòàávfeTTDD˝C˝3232˘3˛D˛U ffwwáààòòáuC2‚  "33CC2! fi    3DTTUUefÃıxww˛xıw¯g˛fVfVVUUD3#3#EUUVfgxwUC343EVgfU˛Egww˛xàxöáhö´ˆºªºªª˛™˛ö ™™ööôôààwgfUE˛D44˝3˘#˛3˛4    DEEUVfgwxx˝àvT3!˛˛˛˛˛˛˛"˛    #4D3"˛˛˛˛˛˛˛˛˛#4DEEUUïáàáàÒá˛wá˚wvw˚vfvff˛edC3232D˛UfwàávTTCCEdDgáweTDV˛w    àxòáö®wâ´À¸Ã˘Àª∫∫˚™˛©
  1325. òòàávveTTDD˛C3C33232˚3C3CDTUU˛fww˝àòáuCB·
  1326. "32!"3DCC!Ÿ#DDTUUô˙x˜wxwx˝wgwgw˘g¸f˛V)U3#"##$EDEFgwwfUEUD5UD#FUWwD35gwwxxâxäòfxö˜ºªº˛ª´˛™öö™ööôôâààxwgUUEDD4˚3#3##4˛3˛4DEEUVVggxxààââàwT3!‡#3"##33"‹4DDEõàá˛à˜áw¸á˜wvww¸v˝feC˛2'33DTDUfwávfeeTDUTTCUTVàuUfwwáwáààâ®vxôºÀ˛Ã˛ÀÃÀøÀ∫∫™™∫˛™    ©©ôòòáávee˛TCDCC3C¸3D˛C˛D TUUffwwáwàòô˛òÜCC ‡33C˚2!!€3TT”ıxwwxx¯wgg˛w¸gfg˝fVUD¸#4EDEFgww˛fUDEC5D4EDFxàâô˝wxxàyôfgàãıº˛ª´™´˛™    ö™™ôôâàxwf˛UDD˛4˘3˛4p34DDEUUfggwxxââôââàe33"#443#""4Dëàááà¸áà˘áwá˚wv˛wvwvw˛v˝feT˛2)"33DCDUfwwffvvT3T3DSDUCVàô©©áwwááàóàôÜfààªÛÀ˝∫™∫™∫©©ôôòàáveeTTDDÛCDDTUUffwwààôòôôòòócC1·˝"3TDC22÷Dñ˙xwxx¸wx˘wgwgw˚g˝fVfVU3""#"#4D35V˛fVgwe3$D#DD4UDFxäöô˝w xxàxâvVggzººª¯ºªª´´˝™ö™™˛ô ààwgfUUED44D˘3˝4    DEEUVfgwxà˝âôâàv33 ‚#"#4˛D3÷ó¸àáà˚áw¸áÛw˛v˝feS3˝23DCDUfv˛fwvT34S3USDUDVwâ©©ó˛w ààòàôÜVwvx´ÀÃ˛ÀÃÃÀÀÃ˝Àª˝∫™™∫©˛ôòávveeUTDDCDCD˙CDDUTUef˛wààòô˛©òòtCC·"232"23˛DC!"!÷’¯x˙wx˘w˘g˝fVfVT3#"˛#C3EVfUVVgvU344D4ED5UDFgàâöò˛w
  1327. xxâxâÜEfggãıºªª˝´™´˛™
  1328. ôââàwwfVUEE˝D4D˛34344DDEEUVggwxàââôööôàvC42˛˛˛˛˛˛˛˛#D˛3˛#33!"˛˛˛˛˛˛˛˛˛˛˛òáàáàáà˚á˛w˛á˜w˚v˝feeC¸23D3DUe˛U"wvuTCDCCDTCDTDVgààôßáwáwáòàôÜTeffxª¸ÀÃ˙Àª˛∫ª∫∫™©òôòòáwvfeUTTDTDDCC3˛C˛D TUUefvwwààôô˝©ód331·!#TDDTC˝32!!!◊é˘x˚wg˙w¯g˚f%VUT3##"##434EUUEEVgfUDED4D5T35UDVWwxâò˛wxwâxàvDVUVWúººª˙º˝ª˝´˛™öââààxwffVUUEDD˘4˛D EEVVggwxââôô˛öôvC#3 ·D4EUED3D"#3◊ó˙à˝áÒwvvw¸vffeeS3˛2 33C3DUeUUffve˛TC4SDTCUUDffvwàó˛w ááôáòádVeefä˝ÀÃÀÃ˙Àª∫ª˝∫©©ôòààávveUUTT˝DCDDTDTDUUeffwwààòô˝™©óe232‡#TCEdDT3S!#C32ÿ◊˝xàxxwxxˆwgw˚g˘f$ED33""##334EUEEVVfUEDED34C5U3ETEVVfVg˝wxwâ˛àTEUEVh¨˚º˘ª¸´ ™™öôâàxwgffUU˚D4˝DEEUUVfggxxàâäö˛™bàfT#32E35U4T4C#"3!óàá˝àáàááwá¸wá˘w˚vfvfeTCC¸2˛3DUTTUffeUTUUS3DCETDUdDfUeUwvww˛á
  1329. âóà®dUTEUg´ÛÀªª˝∫
  1330. ™©©òòàávvfe˝T¸DTDTTUUeffvwáòòô˛©™©veB"C fl TCEdDT4B!213 !Ÿñ˜x˝wg¸w˘g˚fUD443#"˛#3#4EUDEVVUDDUVD33E35DDUTEfUeEgg˛wxwyàxòTEU5UE{ºªºª˛º˘ª´´™´™öôôâàxwffV˛UEE˚D EUEEUVVggxxââ˝ö™òfe2#2flEC5UDD42#!#Ÿó˘à˛á˜wv˛w    vwvvfvffeT˛C3˛2˛3UeUUffeTTUeeS3CDDUTDUTEfUeU˛w˝á àáàódDU3dExªÛÀª¸∫ ™©ôòàáwvfeeUU˝TDUTUUeeffvwwáàô©©™©™©óvt2C1·!DDEeDT4B"3!3 "ÿ‹˙xwxwx˘wgw˚g˝fVUD433˚#53#EUEEVgfDDEVUD344D4ET4UDEeVUFggwwxwxyáxáT4E3E4V㪪ºªº˜ª´´˛™ öôôààwwffUVUU˙E˛U
  1331. VVfggxxââöô˛ö    òfxv33!˛˛˛˛˛˛˛!5D5U4D42##"˛˛˛˛˛˛˛˛˛˛£˛áàáà˚áıw˝v@fvfeDC3CC3232233DUTUVwveTDUeTC3TDTCUTDUTUeUeUvvwwàááàówác4eUvDDyª˛À ªÀªÀªÀªÀªÀªª˝∫©©®òàáávvfeeUUTUT˛U˛e˛fwwáààô˛©™©ñUxáeS‡!!DCEdDSD2#2!22ÿú˚x˛wx˜w¸g¸fUD˚3%##"#3$EUDEVgfUEEUUD35D4D4UDEUDFfFUFfgg˛wxxágwCGáháC#Wõˆª´ªª˛´ ™´™ôôàxxwgffV˛UEUE˛U˛Vffggxxàâ˛ôööôeEhxvS·""445U4D4"#2""€úáá˛à˘á˜w¸vfeTCCDC3C˚3 DeTTfwvfefeUTDDUTDTDUTUeTfeVeVffw˛áààáeefö©òòTCVãˆÀªÀÀªª∫∫™™©©òòàá˛vf˝eUUee¸f˛wáàòô©ô˛©óSDxôóc„2!DSEeDSD23B#22 €Ê˙xw˛x˘wgw¸g ffUD44D3343#˛3#4EEDFfg˝fUD4EEU35T5UEEeEVfVTFfg˝wxxáS6ä´™ôôeCEh´¸ª´˛ª´ª´ª´´ª´™™öôààxwwgffVf˛U˝V˛fgwwxxàâö˝ôfàe2$hôáe!"!4DEU4DD"#2#""öıá˜w˝vfeTCDC33˛C3C˛34DTDUfvffwávdCCUUCCDTDeTUeTfvVdVvgáwáwààÜ2G´∫∫©©ádUVõÀÙª∫ª∫∫™©ôòòááwvv˝fe˚fwvwwááààô˛© ôòÖC!5xàávB!„21DCEdDCD231"1"1 €®w˛xwxwx˜w˚gffUD34¸3>443#434DDEVfUUgxàfD34UT335TEUDFUEWfVUFfWwwxwxxÜ4y´´öôôàweV㪴´ª˛´ª˛´ª˝´˝™ ôâààwwggffVfV˝fgg˝wxxàâ˝ôàáS!5g˛we!„""D3EU43D"4"#!!⁄úááàà˘á¯w˝veTCD˝C*3C3C233DTTDVfvUUxôòuTTUUSCDETUeUVeUgufeVegà˛áàáuW´ª˛∫©ôòáfäÚª˝∫©©ôòààwwvwvvfvf˛v˛wá˛àôò˝ô òòt2#UfwááuA„"21#DCEdDCT23121"!"⁄Êww¸x˘wg˛w˝gfU˛D34D˝343#3#ED4EffUEVgâáf˛UD344EDFUEVeEgfVUVfXà˛wxvViª´´™´öâôàgxâ´ª´ª˛´ª´ª´ª˛´
  1332. ™™´ööôâàxwwˆgwwxxàà˝âôôàáC4DEhàwfA˛˛˛˛˛˛˛#""EDET44C#3!#!# "˛˛˛˛˛˛˛˛˛˛≤w¸áwáwáwá˚wvw˛ve˛DC3DC3˝C3C2˝D fvuTUfwáávwuTCDTDUTUeUfeUwufefvgò˛w àt4zÀ∫ªπªπòô®˛áx™ª˛∫ª∫ª∫˛ª˝∫™˛©òàááwwv˝wá˛wáá˝àòò˛ôòòàu2"33EwávvcÂ31"1#UCUTDCS2D12 3 "⁄•˙wx˚w˛gw˛gfU˛D34D˙3'43#D34VgffUVfggxàáeD3EE4EDFUEfUFgfWeWeWà˛wxc%㺪´™´™ôàâáxxvh´˛™˜´˛™ôô˛à˛wgwgwgww¸xà˝âô˛âàvC"#FxwggdÊ#!"EDET44C#4!"#"€¶ˆá˘wvveT˝DTC3C3˛C>3C3DCCEfvffwwvfwô™óuCDUdDUTVeUwefwfwugugòáwwàtGªÀÀª∫™∫©©ààáwwey˝∫˙ª∫∫™™˛©ôòòàáwá˛wáá¸à˛òô˛© ôôòàcC24f˛wveBÁ13131#UDUdDDC3C122 2⁄Áww˝x˙w˚gfeDD3˛4J34D33443434D35FfUVgxwfVhö™áfEEUE4VEVfVgfVwfgfgfhôxwwxfjªººª´™´ô™òxxwVe6ö™´™˘´˛™    ööôôâàxàwx˛wxx˝à˝â˛önôôâàv33EUfgwffC!#!#"$EDET443#3!"#"¨w˙á˚wv˛w    vfTDCDDC3D˚C/DC4TC3UUeUgàòáffà™©òÜvdSDEeUfvfvefwfgvffh©áwávfõ˝À∫∫™©ôôòààud3Wö™˝∫ª˙∫™©©˛ò˝àáá˝à
  1333. òòôô©ô©©™©©˛òc32˛    #Dfwáávvd0Ë"!3!32$UDUTC4B#C "22⁄±w˛xwx˚wgw˝gfUD4DD34D4#434˝3.ED35UUEVxâàwfgxöôôâáT3DEVUVfVgUgwfgfgeh™áwwT6úª˛ºª™ö™ôôâôöáC3$hö¸™˝´˝™öôôâ˝à˚x˛âöôô˝ö™ôôàv""#5gwxwgfU Ë"##"$EDEDD42#3""›∏ááà˝áwáwá˝wvwveTDDCCDTC3DCD˛C 3DUCDUTDUwààò˝á'àô™™ód3TUfUfvfvegáfxvwux™ówáSGªÃÀ‹ÀÀª©∫©˛ô
  1334. ∫®dCDUx®ö∫™˚∫™∫™™©©ô˝ò˝àòàôô©¸™©™©ôòòt2˝
  1335. 3Ufwwàvfe@È2!"2 3"4TDUTCDB32!2"2 ›Ì˛x˛wx˚w˝g?UEDD34ED3343343434ED4UUD4Vhxwhâòwfhä™™áT4UEfUgfWfVgwfxfgfh´òwxT[˛ºúºª™öôàââôôáUUVEfh˝™˚´
  1336. ™ö™öôôâôààx˝âôôöö˛™ö™™öôààS1#EWgxàgffB˛˛˛˛˛˛ "33"4DDED342#2"2˛˛˛˛˛˛˛˛˛πáà˛áwwá˚wvveUTTCDTD33DC3˝C13DT3UeTDUváÜfw™®Üewö∫®uDUTVuVwvfvfwÜfàvwvxª®áwuãÃÀ˝ÃÀ∫©˛à ôòàòwuUS3W™™¸∫    ™∫∫™™∫©©ôô˚òô©ô©™™∫∫˝™©ôòáS˛ "!4fvwàáwvvSÈ2!#2#C"4TDUCCD2#2 2#2 ›≤˝x˚wFgwggffUED4DD334D33434434D34VUDEVgffgy´ôáfgyôwfgvDFfVgfWwVhwgxwxvh´©wge{˛ºÃ˛ºª©w˛x
  1337. ™àwfgT3%yö˚™´˝™ö˛ô¸â˛ôöö˘™ôâàv1"WwfgxxàwfD!Í"#"#3"5T4UDCD"#""#"›∑àáà˝á˚wveUU˛T D3DDTC3DCCDC4DC3UeUUffeUfx™©òávfà˝ò1vTVvfwvwÜfwÜwòvàÜx∫∫áÜTjÃÀÃÃÀÃÀÀ∫óááwâ®áfwuB23Vâ™™˚∫™™∫™¸©˛ô©™™∫™™∫ª¸∫©òòu0!$feVwààòáfe0Í232#C"ETTUDCD231 13B" ›Á˛xwx˙wgfU˛ED˛4ED3343˛413E3#5UUEWgeEUgâòffgxâö™ö™áfEVfVxfgwgxwgâwxwy´™àu3I˘ºªòàwfgâà˛wT3#36zˆ™ö™ööôô˝ö˛™´´ª´´˛™oôàáTDEVgxâàwfe "#"#3#ETEUD3D"#!!#2#¥˝áwá˚wve˝TACDTTCC3TS3CDCDS34UdTUwveUfvávfxö™∫ª∫™πáeTfvfàÜwávàáwòáàáy™™®ÜBXªÀÃ˝ÀÃÀπòwuUâôòòáeUB2G˛™∫¯™©™™©™™∫™˛∫˝ª˛∫™©òÖc "˝ "24fwàòáwvu0Í2131323UTDeDCC2#1132!2 ›∫xxwx¸wggfUE˝D4DD334DD3˛43DE34EUDEVgfUVWwwxööºª´´™ö™áfDgfVxwhágxwxâwâwy´´©wTX´˙ºÃ∫àwfDiô˛à    ffC"ä™™´˚™öö™˚ö™¸´ ª´ª´´™™ôàeC˝ $EUhâàxxwf1Î#!3!42#ET5U43D"#!!42#˜Ë∫¸á¸wveU˛T    DDUTC3DTD3¸DTCTTCDUwuTUwà©©´À˛ª"™ªπ™∫óeTfvfàÜxáwàáx©áôá⪪πáeh∫ªÃÃÀ˝ÃÀ©óweh®ááwvUS2!$ö˛™∫˙™∫©™™∫˛™¸ª
  1338. ÀªªÀª∫π©óeB˚ 3DDVxòààáÜvSÎ2!3!"C23UTETD3C!2 "!4B"3 ˜!Ήxx˙wJgfUEDEDDED34DE334D4DDEDEEC35VUDEhâä´™¨ª´ªª™´©ö™ÜUUgfgàwyáxàwyôxäàä´´∫áUX´´ª˚ºÃπàxvxôágffDC427ö™˛´Ù™˝´˝ªº˛ª´™ôáU1˛##4FxààâàwfT˛˛˛˛$#3!43$UDET4$C"!42#3˛˛˛"˛˛˛˛˛¿¸á˝wve˛T CDTCCDDTC3DTC˛D5TDUT3DUeTfwôòöª∫ªÀ∫ª∫∫ª©™∫ñeUwvxòáàówòwâ©àôò⪪ÀñCX™∫ª¸ÀÃÀÀòàáàôòááveTUcX™¸∫™˛∫™™∫∫™∫™˛∫˝ª˝ÀªÀ∫∫®ód ¸!"4gwààòàávd Ó 23!"C24UTESC3C!" ˝"!D233 Ù Ó¡wwx˛wgwfeEEDD4D44DEC334D3˛4EDED34EVVgáwôàâ´´¨º™º˛´™ö´vUEgvhâwâáxàwâôàöò䪪ºß3Hôö´˙ºª©˛àöôââàwwhÖ7ö´™´™´™™´™™´™˙´˝ªº¸ª´©ôáT¸EggâàâàwgdÔ"3#4"5UDEC3$C˝    4"#3˙Á√à˛á˝wOvUUTTDTCDTTCC4UTCDCCDUTUTDVwávàÜwâóà´∫ªÀ∫À ∫À∫™∫veUgwwôàôóàóàô©à™®öÀÀÃ…dVôô™ÃÀÃÀ˛ÃÀª®àòô®à˛áwàñEö˚∫™˚∫ª∫ªª˝ÀÃ˛ÀÃÀÀªªπòÜc˙ 4Vfwòòôòáwd Ô!"1#B!3C2DUCUSC4C " ˛
  1339. "!#D23C  ÒÍx˝wgwfUEEDDED4ED334DD34D44DDEUDF˛f/Ugfgyàxõ™¨ª´ºª´ª™ö™feVgwhâàâáxàxä©àõôõªªº∫fEyàô¨˙ºªªôõôâàwwxxààDz™™´˝™´˛™˝´ªª˜º˛ª@™ôvS4EFhàâôòwwd!#!#2$3#5U4E3C43˝+4##3¬˚wve¸TSDT˛CBTTC3DDCCDETUSUvTVeTVvfàóà´∫ªÀ∫àªÀ∫™∏feUxáwòàôóàòàö©ô∫©´ÀªÃ ÖChóâ´Ã˛ÀÃ˛ÀÃ∫ª∫©òòàôò®àtX™˛∫™™∫˛™∫∫˝ª˚ÀÃÀÃ˝À∫πòÖc ˚ #CDfwàô©òáwt1Ô 2132!3C2ETCTCC4B ˛
  1340. "!#D23C  Ó!ÙæwwgwggfU˛DIED4DD34DD334D34D4EDEEUUDFfEVgfxàâ´™´ª´º™´ª™ö®VeFgwxâàâòyôàö©â´™´ºªºªt"Gxxö¯ºª¨ª™öôàâàâxÜ5ä´´˝™ö™™˛´˛ªˆºªª´©àvd!¸#Eghâôäàxwe1Ô##"43#ED4D4342˛
  1341. "D#43˜Î√¸wve¸T DDTDDTC33DTC˛D/EdEUdEUTVvUgvvàòôª∫ºÀ∫ÀªªÀ∫™ßVefáww©òô®âòà™©™ªπª˛À#ÃîCVàwôªÃÃÀÀÃÀÃÀÀªÀ∫∫πôàòâáàdh´ªª∫∫™˛∫˚ªÀÃÀ˛ÃÀ˛ÃÀÀª∫©òvd ˚ 4Ufàôò©òááe "2 31DB3USDT4C4B˝    2!#D2DB!"ˆÍÁ˛wgfUUDEDE4ED4ED33˛443344DEDFgTEUDFfUgwgâò亙ºª´ºª´º™öÜVfWxwhöòäòâô♩䪙¨˝ºßUVggâ´˘ºª´º™ª™ôààxàxu5i˝´™˝´ª´ªªÙºªª©àfS˛4EWxââöâàwT˛˛˛˛("##"42#EC4D$342"$D#43"˛˛˛˛˛˛˛ΔwwvveUTU˛TDTCDUC˛D6C33DCDDeUveTEeTVvehówö®öÀ∫ªÀªÀ ªÀπòuVufwwx™®ô®ô©âª©´À∫ª˝À  vefvàöÀÀªÀÀÃ˛ÀªÀ ªÀ©˛òàáádF䪪˛∫ª∫ªÀªª˚ÀÃ˘À∫©òÜA˙ #CExâòô©ôòvd 123!#323TCDS4B31˝    "!$C3DB"2ˆÛ˘ºwweVUEEDED4D34ED4ED3#3˛43DEUVUEDEUDFfUXàwäôõª´ªª´ºª´ª©wUVfVxwyöôäôäôâ™ôõª´ªºª˛º    ÜDFVx䪺ªª¸ºªºª´ª™™ôôààwwTFz˙´˝ª˜ºª˛º™ôàv1˚#4VxôâööôàgT!!"34"$D35C433!˝    "$C#E2"ˆͪJáveUeUTDTDTCDUTDUTCCDCC3DDUevTUSEfUVvfxòáö©öÀ∫ÀÀªÀ∫ªÀóeUgufááà™ò™®ö©ôª©´À∫ª¸À∂CEUxâª˛ÀÃÀÃ˛ÀºÀªÀªª∫©©òòàáTFö˚ª˜ÀÃ˙À∫©òÖA˚C5wâ©ô™©©ávd0 "1#2!3C24TCDC4231˝    24C3DB"2ˆÍÓKweEEUUDEDED4ED4EU44D3##4DDEWuDED5VUVgVhàxä©õª´ºª´ªª´∫vEUWfgxwyöòö©ä©ä´™´ºªºª˝º ∫TETXxõºªªºª˛ºªºº´º˛ª©öôâààvDX´ª´´ªªºªÚºnª™ôàu236häôä™öôáfD!#"#3"4D3D34#3!"4C$D2#"˛´veTUU˛TBUTDTTCDUTUTC33CC3DDveDUTEfTVwfgòáö©õÀªªÀªÀÀªπdDUfeVàáà™òöπö∏ô∫©ªÀªª˚ÀñfSVàöÀ∫ªˆÀ ªÀ∫ô∫ôôòòuTzªÎÀ∫©òs1¸CVx©ô™∫™©áuR" 2!213B2DS3T3C230˝    1"4S3TB31fiÕeUD4UEDEUDED34EDDUC˛413#44FUE4FTEfTFwfhàxõôõª´ªª´ºª´ßD5UgeVxwxöàö©ä©â™ô´˛ª*ºªºªººπfC6wy´´ºª´´ºªÃªºªºªºª´ôõ©öôâàvW´ªªºº˛ªºªºªºª˛ºªºªºªª™ôàc4Wy™â´™öôweCÚ""#"32#43$D#C"# ˝    !4C4D3#!fiØ-eTTDUUDUTDTCDTTCUTDDC224TDeDTDUTUfTVwfxòáö©´Àª˛ÀªÀ∫ñCEUgeVàáx™òöπö©ö∫©ªÀª˘À
  1342. ñCEgà™™ªÀ∫ª˘À ªÀ∫∫©ªôπôòòeãıÀïÀ∫òòR˚#Egô©ö∫∫™òáuRÚ!22 3!"32#DC4C3C22 ˚    1"DCDT331fiÎUED4EDEUDUD4DC34UDED3#˛4EU5U4VDEVUFgfyàxõô´ª´º˛ª´àe3EEVUVxwxöàõ©äôä™öºªªºª¸º ª©TVWhâä´º´¨¸ºªºªªº´ª©´©öâôàuXªººªºªÙº˛ª™ôáB˛$EXöôõ´™™àwe1˛˛˛"""#4"#D3$C$3#!˛ "EC5D33!˛˛˛˛˛˛˛˛˛¥7TUTTDUeTUTDTC3DTTDUC3DCCDVdETDfdUfTVwvxòᙩªÀªÀÀªÀπÜd3TU˛fáwx™ô™πö©ö∫™ÀÀªÀÀª¸ÀªßffvââªÀ∫ªÀÀøÀªÀªª∫™∫ö©ôòóV´ÌÀªπòÜB˚!Eex©ô´∫™∫òád Û1122!"C"3D24C3B!2 ˚    "!#DC4T3C0fiƒ^UUED4VUEUDED#4ED4ED4ED34FeD5T4VUEfUVwghàxöô´ª´ªª´ª®eC$EEffVxwxöôõ™ä©ä™öºª´ºªªºªººªªπfEfxx´ª™´º´˝ºªª´ºª´ªöªö™âààU{˝ªºª¯ºªº˝ª©òu"¸EVyôâ´´™™àwSÚ!!"23$C#43$2"˚    #"E35D#4!·¡_eUTCDUTUTUTCDTC3EeTUeC3UweTETDfTUveVávà®à™©ªÀªÀÀªÀñeS4eUwefáwx™ò™πö©ö∫™ÀÀªÃÀÀÃÀÀÃÀÀ tDfwà´À∫´Àªº˛ÃÀÃ∫ÀÀª ∫ªπ™©©ôÖi¯À˛ÃÀÃ˚À∫©òÖ1¸5Ufàòöª∫∫©áwd Û#0"1"1"23B!4C2D2D1!2 ¸
  1343. 3!#UCES3C fiˆUU˝D(EEDUDEE3#4FDEVT4EgwUD5T4VTFgeVxfyòy´ö´ª´º˛ªÜUC5VEgfVwghöôõ©ö©õ™ö˛ªºª˝º'꺪ÖEVgx亙´ª´¨ººÃÀªª¨ª´ª™´∫õ™ôôáX´ºªºª˚º{úªªºªºªª™ôàÖ!EEWâàõª™´©àwT# "#!#"#243#D#4!"#"$E3ED4CæOUdUTC4TCEeUTC33ETTUeCVveeUSETDUdUwegávà®à™©ª ªÀÀª ueSEeUvffwvxôò™πöπö∫™À∫ªÀ∫ªÀÀÃ˝À¶wefwà™∫™ª∫ªÀÃÃÀ ÀªÀ∫ª∫´∫™∫©®óf´ÔÀ∫∫©òÖ!˛4TUwàà´˛∫®áÜRÛ2 2 213132"DB3C231!˚ 3"4TCUS4C  ‡ŒUET˛4'D4EEUD34DD4EUDEVeDUECET4VTEgUWwfyòy´ô´ª´˛ª/πeVTEVEffVwfhâôõ™ä©ö™öºª´ºª´ºªººªºªπáeFgxôôöª™õª˛ºªª´º™º∫öªö´©ôâfzººªª¯ºªº˛ª´™ôàu˛EDFxwy´ª™™òwv1Û###!#!#"4"#3#3!˚ #$E4EC4C˘ÍœteUTDT3DTDUeCDTTCDUTUTEeDUDCUdDfTUfegávâòâ∫©ªÀªÃÀª∏efdUeUvefwvwôò™πö©öπ™ª∫ªÃªªÀÀÃÃÀÃÀÀñdFfwààöªπ™ÀªÃÀÃÀÀª∫ªÀ©ª∫´πôôÜhª˛À¸ÃÀÃ˚Àªª©ôòÑ ˛!4TTfáwäª˛∫òáuAÙ"222 3!"C!#C23C2C !˚ 3"4UDUSDB " ˘ÍaUUED33E34FT4ED3#EUEUC5U4D54ET4VTEgeWwgyòy™ö´ª´ºªªóUVUVfUgeWwfgââõ©ä©ä©öª™´º´ººªººªººª®EVfhxày´©öºª˝ºª´∫´º©´∫õ´ôôágúıºªª´ª´´ôôàcED5ggh㪙´™òxuB˛˛˛˛2"##3#3"$3#3˛##5U4EC52"˛˛˛˛˛˛˛—eTUS˛D03DUTUTC3EfeDUCETCTDCUTDVdUvegávâòâ∫©ªÀªÀÀ∫ßewefeU˛fávgâòöπôπöπöÀ™ªÀ∫ªÀªÃ˝À)ª Üwugááxª∏öª∫ºÃËÀª∫™À∫´À™Àπ©òväÀÀÃÀÃÀÃÀÃ˝ÀªÀ∫∫π©òÜB"#TCEwfx´À∫ªπòáuBı"312"2"2#2!#C"32"3  ˝2"ETDUCDB!2‡’uVED4EC#5EDEUD4FVVC4U35T4DE3ED4VTEgUWwgyày™öºª´ºª™ófxffeEVeVhfgââä™ä©ä©äª™´ª´´ª´ººªºªªº©weFwgh´ôä´™¨ººÃºªª™´∫õº™´∫öôáiª˜ºªª´ª´™öôàT"#"$D3FfVi´ªö´©àwe0˙˛"#!!#"#"#2#3"4"3˝"#5D4U4E2"ʸ’uU˛TJ23TTDeTDVvTUCDTCDS4TUCUdDfdUwegáwâóâ∫™ªÀªÃÀ∫ówávvuUwufwÜgôòöπöπöπöª™ªÀ∫ªÀªÃ˚À  óeVágà´∏öÀ∫ªÀÃÃÀÀª∫ªÀ™À ªÀ©∫ów´À˝ÃÀÃÃ˛Àªª∫∫©®òuC1"2!4S3Vvfàª∫™ª©òáe0˙˛1"31313231313B#C2"2¸!"23ETDeCU2"1¯ÈıfUED334˝DCEDFT3D35D3EC4DE4ET4VTEgeWágâàä™ö´ª´ºª™ógxvffEgeVgwgâàã™ö©ä©ä´ô´ª™ºªª˝º%ªººª©fgwVxõ©äª™´ººÃººª∫´º™ºª™º∫õôw{ººÃ˙º#ªª´™™òweC""5C$VeVy´™´´ôxwe1˛8#"#!#!#"#!#!4"3""3#ET5U4E2"˛˛ÿRfeUC4TCDUTUe3EC3T3DS3DCDCUCUTDVdUwegáwôóâ∫™ªÀªÀ ©òvàvvuUguVwvwôàöπôπôπöª©´∫™ªÀ∫ÃÀÀÃ˝À$ª®àÜVwõ®öª©´ÀÀ‹ÀÃÀÀ™ÃπªÀ∫ªÀ™∫áâÀÃÀÃÀÃ˝Àªª∫∫òvTD2!#!#T24feVâª˛∫òàveB˚ ˛31"3 2 3!"31"3!C2#C "2˙ "23UTETDT2"1¯Í‡efUT4ED"%fTED#D34D3EC#E344U4FT4FUEgUWágâàä™öºªºº∫öòwàwfeEfUFwfgâàä™ä™ä©ä´ô´∫öºª´ºªººªººªºªòeEgã©ö´ôõªºÃ˛ºª™º∫õª∫´º™´òx¨˙º˛ª´™òeD3"#D"5VUVz™ö´™àxfUB¸˝.3"##33333"#3#EDET4D"#!¯˘ˆŸRveTUT235eCEC4T3DC3TC4T3D4TCUdDfdUvegáwôàö™™ªÀªÀπ™©àòáeeUfeVwvgôàä∫ö∫ôπöª©´∫™ª∫∫ÀÀªÃ˝ÀÃÀπvfwö∫™ª©´Àª˝ÃÀ ªÀ∫ºÀªÀ ™πáõÃÃÀøÀª∫®uS2!24S2EeUgâ∫™ª©àáfT@¯#C!322#3!#C!#2!#C!3B"1˝ 323UTUdDT231¯ÌˆdfUED3#45T3E34C#53$D34D#D4U4FT4VUEgUWwgâàä™öºª´ºπöôàâwVUEgeVgvWâxä™ö™ô©ä´ô´∫äº∫´ºª´ºªººªºº´áxwzªöª©öª´¸º ª´º∫¨ª™ºª™ªàz˚º!ªª´™ôÜD3!42#EUEWä©ö´òxwUC˛˛4$3#""#"#2#2#2#"!#3$EDET5T#3!˛˛˛ ÿveUC3˛DITDTC4C3T24S24C3S4UCVdDVeUwegÜwôàö∫™ªÀªÀπô©àôáeeUfeUwvgàáâ™ô∫ôπô∫ò´πôª∫™À∫ª¸À"ÃÀª®òÜyª©ªπôª™ÃÀÃÃÀÀ∫ªÀ™À∫ªÀ∫ª∏àªÀÃ˝ÀªªπóS2!¸3 C2#USDgô®ô™®àÜeS˘!32"313132!31!313131" ˚324UTVTES330¯¸ÈffUT34D3#D4D35C$D#5C#43$C5U3FT4FUEgUhvgâxä™öºª´ª©yôxâwVUEVeEgfWàxy™ô´ô™â´àõ©ä´©öª™´ºªººªºª´©àeX´™´©â´©¨ª˝º ª¨ª™º∫´ºª´ªàõ˝º˛ª´ôÖ3!˛#3"$UD5gäàâöàxvUC˙423!#!#"3!3!#!#!"˝334VDFTEC#3 ˚˘¸·TveTDTC23SET3UCDT3DS3DBDCEeCUeDUdUvegÜwôáö∫™ªÀªª®àòàôóedUfeUvufòáâ™ô∫©™ô∫®´∏âªπöª∫´ÀÀÃ˝Àª ófhª∫ªπò´∫ªÀÀ˛ÃÀªÃ∫ªÀªÃÀªÀ®öÃÃ˝Àª∫®c1˝"2#C"4UCEgôòô©áàÜeB˙2C2C131C1"31C!313 " ˝"424eTVTUS3C ¯!!˘!¯˘wwUDEC##4DET4U35D3E3#D35C5U4FU4VUEgUhwgôàã™™ºª´ª©àòxâóVeEVeEgfVàwy™ôöô™â™ô´ôâ´òä´ôõº´ººªººªªôwxõª´∫àõ∫õººÃººª´ºª´º™ººª´π⸺'ª´™Ü2#!#25D35hâxâôwxvU ˛94"3!3!3!3!3#!#435UDVTEC33˛€TveUT33DCDVTEeCUS3T23D3ECEeCUdDVdUvUgÜwôàö∫™ª ∫∫®àòàôñVdTfeUwefááâ∫ò∫ò™ò∫ò™®â∫òö∫ô™À∫ª˝ÀªÀπò®öÀ™∫òä∫ôªªÃ˛À ªÀªÃÀªÃ ª à´Ã˛Àª∫©s2˙3 31"US2Egàwâòáávd0˘1#C!#3!2!#C!#C!#3!3!2 "˙"C3EeTfTUS4B˜"ı ¸ ÎgweU33DC"$VTEU4ED4U3$D3ED5U3EU4VUEfUhvhâxõ∫öª∫ö™òyôxâÜVTDVUEgeWxwy™â™ô™â´òõòy™àä™àõ´™¨ºªºª´º∫ôòä´©´òä™ôõ´˝ºª¨ºªºª´ºªª´òõººªª´ôáC!˝#3!#EC#EgágyàwxvU1˘2"3#33#3#3#3""""4#5UDVDEC43˙˘ ÌwedCDC2"4feUeDeTDTCDT3UCETCUdDfdUvexvw©àõ∫™ª∫ô∫òàòàôÜUeDfeUgufàáà™ô™®™ô∫ò™®âπáäπòö∫™ªÀªÀÀªÃÀ®vä∫π™®â∫òöªÃÀÃÃÀªÃÀªÀÀªÀÀªπöªÀÀª∫©t2 ˝22"4T23UwÜvàáwávfA˘23!#C"3B!32!3B32!32#22!"#D3EeTfTUSDB˙! ˘   !!!˘ggfT5D"##$WeFUEVDET35C$EDEU4EU4VUEfUhvhôxõ™ö´™âôáxôàâÖVeDVUEgeVxwxöâöôöôõòöòy™xä©xä™â¨ª´ºº´ºª®få´πä©x´òâ´¸º1ªººªºª´ºª´™â´ºªª™áC"#"#"$D"$EgfgxwgwffB˛83$2$2#242#2#2#""!#4#5UEVDUD4B˛ÎwvTUB23CDgefuUfTEdCES4UCEeCETDVdEvUwvxôàö∫ôªπò©áwôòôuVdDVdTgeVááx™ò™©™®™®™®â©áâ®áöπôª ∫ÃÀªÀÀ©àõÀπôπàö∏à´ªÀÀÃÀÀªÃÀÀÃÀªÀ∫ª®™ªÀ∫©t3!!˝2!31"DC"4VwfgàvwvfvR˙B!32!32"3231313121"1 ˝14C3EeUfTeCTB!"˜ ˙  ! !ÚjwfUT"#4D4geVfUVUFe4FT4UD5U3EU4FUEfUhvhôxã™â´©âôáxôxàeFT4VUEWUFxwhöàö©öòõòõòy©wyòwäòà´∫´ºª´ºªööõª™â´òä©xö´ºª˛º/ªºªªººªºª™©ä´ª™óC""3"#D25VgVWwfwfgfS˙32324"3"4"#!#!#!!$3#EUEfEUDE2"˙˝!ÌjáveS3DS23gvfvUfdVuDVdDeCEeCEdDVdEvUxvx©àöπô©®àôóxòààuUdDfdTfeUxÜx©òö©ö®ö®ö®âπáâ®wô®à´π™ÀÀªÃÀ©©´À∫ò´®öπáä∫ªÀ˛ÃÀËÀÃÃÀªÀ∫ªò™∫πt2˛!¸14C"4T2"DVvUwÜfveved0˚33B"C2"C2#C1"C1"C1303 "   !3C3UeUfTeTUB"2˙!˘ !! 1!¯áfe˛Dc2WfWvUfUWfEVUEUDEU35U4FTEfUxvhôàõ™âöòwâáhàxweVeDVTEVeFhvhöàä©ä©äòäòy©wâàgâòxõ©ä¨ª´ºª®xzª´òã®â™ày™ö˝ºÃ¸º
  1344. ª´º∫´òö™òC!˛_ 424D"#EVfUgfWeFUEVB#24"4"3!3!3!#!#"!4C#VUEfEUDU3"˛˛!!!ÎkávdDTC""3WufvevefvUfdUeCEeCEdCUdEvUxvx®àö©à™®wòáwòáádVdDUdDfdUwvw©àö©ö®ö®ö®â©áâówôów™®âª∫ªÀÀ∏wäÃ∫®âπà™óâ∫ô´À˛ÃÀÃÃÀÃÀªÀ ™πâöÖ2˛¸2DB"DS24DfeVvefdUT4fR¸432#C2#C!#C!#C!#3!3 2 2!!1DC3UdUfTeDUB#2˘ ˜ "010!ÚjxvTEC""33WfWfVgeWwUVeEVD5U35U3ETEfUxvhôxö©xäàwxvgàwwTVT4VU4VUEgfgâàä©äôäòö®y©wâágâágöáy´©´ºª∫àõº∫òy™àöòyôàä˝ºúºªººª´ª™öxàc!¸"4!D3#4EfUVfUeDDC$VS˝5"4"#C"#3$3$33#""!434VTEfEUDU2#3˙˝#!!!!ËmàÜeeC23DCVufvewefvefeEvTEeCEUCUTEfUxvx©àö®àôówàvfàávdUdDUdDfdUwvgôòö©ä©ä®ö®â©áôówôówôáy™ò´ÀªÀ∫ºÃ ®à∫òöπà™®âªÃÀ˛Ã ÀÀªÃÀªÀπôòáR ¯!3C!#D23TVeTfeVd3T24fc˝5#C24S"3B!3C!4B!#C!#222!"!DC4fTVeUeTUC32˙ˆ #1"!"1"1˘kxwVT34D3"5eVfVgfWwfgeEfDEU35U3FTEfEhfhôxäôwyágxvgxwfTET4EU4VUEgfgâàä©ä©ä©â©y©wäágâágâwyöà㪴ºªºº∫öàöòä©àõ®xõ¸ºiÃôºª´ª∫âòv3$33"$DVUEfUVC$D!$VT!"#3"$C43#3$3#2#"""#!43$VTFeFUEU3#3˛#!#!"!#!Ï|àvfd3DC2!$eVvfvvfáfwuUfTDeCEdCVdEvUxvx©áâ©áàówàáwàvvTUdCUdDfdEwvfôóä®ô©ô©â®à©áâógôÜwòÜx©áä∫™ªÀªÃ ™óö®âπòä©áõªÀÀ‹ÀÃÀªÀÀ∫ª∫òòt1˜92C13B"4DfTEeDeB3C$VeB23C2DB"3B!32!3232#221 ˝2 D34eTVeUeEeC32¸˘20"12 " ÓlàffD4D"$UFfUgfWwfgeEfT5U35U4FT6fUxfhôxâòxâágxwfwffDEU4ET4VT5gfWâáyôâ©â©â©àôwyágâvhâwhôwy™â´ª´º∫öòz©xöòy™xä´˚º    ¨ªºª´™òàS!˙W"3!42#45UDFTET"#2$FUC#$3#423"32#2#!#"!!"D#5VDFeFUEU3$2˝˘"#!#!ÒnááuTTB""34eUvewvgávwvUfTEeCDUCUdVvUwvxôáâ®wàówàÜvwveTUdCUdDVdDwvfàáâ©â∫ôπâπà©áâówòÜxòvx©áâ©à´∫ªÀ ©®â©àö®â∫óâ∫´À˝ÃÀÃÀÀ™∫®ÜB˝¸U #CD233EdDeTUS2314EfR#2DB3D2"C1"C1C1"3131"!"1 !2#DCDeTfuVeUeC4B ˝˘"2 302 2 ımxweVT"##3$UEfUgvgxfgvEfT5UC5U3FTFfFxvhôxâògxáfxvgxvVDET3ET4VTEgeVàáy©â™âöâ™àöázágâvhâvhôwyôxõ™´º∫öòxöàä©xöòy´ö˘º ª™´®u"˝["32$3"##FTEe4UC"#!#$VB3#43#D2D!4"3!3!# #!!#D35VDVeFeEU342˛## ##ËsxáufS3CC2"DUfUgÜfávwvUfTDeC4UCVTEvUàvx®áâòwàávwÜfáufTUTCETDUdEfufàáâ©à©ô©à©à™óâówôÜxòvxòwâ®áö∫™Ã ™©à™óâ∫à™®à™©´ÀÃÀÀÃ˛À™™©s1¯V2 C13B"C3eSUdDT2"22#US2DS3DC3T1#C1"C!31C 3 2 " 2#D3EeTfeVeUeCDB Ò!2 2 3 2 Ènyáfe34D24EfEWfVxfgvUVD4U3$U3EDFfFxvxâwâòwxáfxwgxfVDED3ET4VT5gfVxwyôàöâöàôàöàyògâvhàfhàwyàxä™öº∫™ôxõòy™àö®xõ©ä¸ºªºª™öôS!¯X"33"3$U4EC5D""!5D4EC#D3$D"#333!3 ##""$D35UEVeFUEU3D2Ù""## 3!ËzôáfdCTC!"4EeTWvfávgvUeSDeC4U3VTVeVàvxôáôòwàáfàÜfwvfTEdCUTDVdDwvVàáx©à™ò™à™òöóâòwòÜwòvxòvàòwöπôÀ∫™©àö®à™®öπà´πôªÃÀÃÃÀªÀπôßR˜V"23C"3B!325TDUCDS!31 DC4UC4T24C!3C!#3!#C 3 22 2 !! 24D3EeTfefeVdCDB" Ú!23 2 3!˙oàwfTED"##45UDVfVgeWfUVD4UC5U3FDFeFxwhôxâàwxáfxvfwfUDEU4ET4FU5geVxwiôàöàöàöàöáyàxàwhàfyàgyàwäôâ´ª´™àä®xö©â™àõ™â¨˝ºª´ª™âá2˛˛d#"424"3#EC5U342#!4#$U34D#$3$333##"#"!4D#FUEVUVUFT3D2#˛"###3ÎzààvTUC"3323DUDVeUweguUeTDUC4TCUTUuUxvxôáâòvàávxÜfwueCETCEdCVdDfuVàáx©à™òôòôòôòâòwòÜxòvxòvâówô®àª∫ªπ®â®áö®ô∫òö∫ò´ªÀÀÃÀªÀ∫òÖ1¯Y31"C23S!#2#UCES3T12 "324U3DS24C"4B!#2!#2"2222!! "14S3VdUfefdUd3TB2 Ù!222!"3 ÌzxàfUT3"43"5E3FUEgUWfEVD4U34U3EDFeFxfhòwyàwyágxwVgeU35D35T3FT4VeFxwhôàöòöòöòâòyòwâwxàfhàfyágâòx´™´©òy©wzôyõ©ä´ôõª´´ºª´ª™òd˙[3#3"4C#"$E3E3#D!"3#5T3ED#4242#2#"""""!433FUEfUVUFT4D2"Ù!""33ÒzàóvfS3CC2 4UCFdEfefuUfSDUC4eCUTVuUàvx®áâòwàávxáfwuUCDTCEdCVdDfuUxáx©à™®ö®ö®ô®à®áôáxòvxóvâówôòà∫∫´πôâ∫óâ∫à™πôª©™À∫ªÀÀªª∫®c ˚\ #B!3C2DB"314T4T23C!"2 #C3ET3US3TB"CB!32!21#1#1#22!!"1DC3VdUvUfTVTDTB"2 !˜122#2 #C ˚{âáffC#D3!5U3ET5fUVeDVC4E3$U3FDFeFxvhôwyàgxwfxwfgeUC5U35T4FU4WeVxwhôàäòöòäòäòyôxâáhòfháfxágäáx™™´∫äâ™òy™àõ©â´©öº™´ººª´™òS˛z$34C#E2#2EC4T"$3"!$3#ED4EC#D2#4"4"#!#!#!""#"4C4VTFfUVUVT4D2""!"33ÙyôóvuCDC2!"2DT3ETDfTVeDUS3TB4TCUTFuVàvxòwàòáwáfxÜvwdeCETCETCVdDfuUxÜwôòö®ö®ô®ô®à©wôáxòvxófàówôów™©´ öò™®à™®ö∫ôªπ™ª∫™ªÀÀ™™óB˛˛\"32"DB4T232#UCES232"1 4B3US4UB3D2"D1"C13131# "1"1"  2!"DC4eTUvUfTVTDT1"2 !˜!12#3!#B!ÙyôwveDE2334D35D4VDFU4US#E3$E3EDFeVwfhàwxôwxwgxwgwUUC5D35U3FTDVeExwgâàäòäòâ©â©xôwäáxôfhàgyágäógöòö∫âòöòxö®äªôõ∫öª™´ªºªööó2˛`"4!4"5D##"$E3EC"3"#!434UC$U3$D"4!3!#!#!# !#! #434VDFfUfEVD4D""˜!"#3#3ÒyòàÜeUT2"3C24T3US4eTUeDUS3UC4T3USVeVávxòwàòáàáwàávvUeCDTCEdCUdDfuUwÜgôóö®ö®âπâ©àôáâóàôvxòvàówôów™òö∫ô®öπà™∏ôªπ™ª©ª ™ÀªÀπ©ï1˚]2#C!#C3ES2C15T3TC2C1" "4CDeCDUB3T!#C1"C!313!3 #131" " "2!#DCDeTVvUvUfSDT2"2!˜  "132!3B!˚zààwUUC##3"$D#ED4UDFU4EC#EC$U3FCFeVwvhâwyàwxágxwgvEUC4U35U3FUDWeUhwgäàäôä®â©âôàäàyòxôwyàfyàgâágöàäªâ©ä™àõ©â´™õªô´∫™´ª´©ât!˛`"$2$3#EC#3EC$D33!#"435U35U3$C33!#3#!#!#!#"#435UDFfEfUVD5D""˛˛!$2#3Òyàòvfd23C2!$T3US4eCUdDUS3UC4T3UTVeVàvxòáàòvàávàáfvUeCDTCET3VeDfuUwÜwôáä®â∏âπà©áöóâ®àôáxòvxówâówöó⪩πâ∫òö∫ò´∫öªπ´À©ª∫™©òc0˚]"2C2C2#UB32#UC4T2#C!22DCEeCDT24C!#B!#3332 2!3 2 !!3!3DCDeTVeUvUfSDT!#2 ˜!" "032!32"ÚyâòffT343!$D3EC$U35T4EC#E3$D3EDFeFxfhàwxògxxgxvffEU35E35U3FUDVfEhvgâàä©y©â©àöàäàyòxâwxàfyágyágäày´ô™â´àäªôõ´ö´™õª™´∫ôöáC¸^#!4!4"#E3#"U3$D"#3""E35U3ED"43$2#33###3"#$D35UDVeFfEfDEC#"˜!#242ÙxöóvvTDT2!"3DdCUS4UCEd3US3TC4T3UTVeVávxòáàòáàávàÜfvUeC4UCEdCEeDfuUwÜgôáô®âπòπò™òö®â©áôóxòvxóvâówôò઩™ò´®ôª©´À©ª∫™Àπ´À©ôÜB˛a313S"3C25T231$T24S23C"114TCUd3US2DB"3B#2#2#2#2 2!2 2!!2"4T3EeTfeVuUvTUS!#1 ˜!" " "032"32"¸öávfTEC!#3$U4EC$U3ET3EC#E3$D3EDFeVxvhôwyôàyàgxwffEU34U35U35U4WfUgwgâàyôâ™àöàöàäòyôwäáxàviàgyágâàx´ôõòõ©â´©õª™´ªöª©õªôâÖ"]34C"#3"5C#3!%C#4C"$3!"$D4ET4EC#4242#2#""#""3"!!"$D#FUEVeVeEfDEC"#"˛"!#2#"ˆ{©àÜvTTB!"32#T3US4UCET3ES3TB4T3UTVuVwvxôáâ©áàòwwÜweUeCDTCEeCEeDVvUwÜfààâ©âπà™ò™óâ®à®áâóxòvxòvâóvâóx™®ö®öπò´πöÀ∫´À©ªπö∫®òÑ1˛`#2"DC"DB3UB2C!DB2DS2D1" "14T3US3US3D2"313131#2#2#2#2 2! "24C3EeDfefeUfTUS!31˘!" 2 32"31"¯,ôàweVT"#33!D4EC4U35T3EC#42$D3EDFeFwfhôáyôwyà˛wgeEUC4U35U3FUDVfUgvgâày©âöàöàäàyôxâáâóhâwyàgyàgyáxöôã©ä™àõ™öª∫õº©´™â™ôàc#3#EC#D24U3#3D2#E3#D1##4C4VC4E3#D!3!3!# /#"#"#"#2""4C3EUEfUVeEfDEC#!˙"##"3"ÛwòòáffS33C1D4USDTCET3UC2DB4T3UCVeVwvwôáâòáààwwÜveTeC4UCEeCEeDfvUgÜfâóâ©â™òöòö®â©áôóâóxôáx©wâòwôów™®öπô∫ôõÀ©ªÀ∫Àπ´ªô™òáB˛a 3C4UB4TCEd24BT23TB3T13 2 #TC4eS4eB3C1"C1"313021313232"1  314C3UdUfeVuUuDUB"21ˆ!!2 2 31"C1"¸âôwffC443D4UD5T35T3EC#43$D#UDVeVxvhâwyòwxàfgwfUEUC4U35U3FUDWeUgwVyáyôàöàöòäôyôxäòyòwâáhôvyògyògöòä©â´ôõª™¨ª™º∫õ´òöòv2d35U35EDET#4!D#$D34D!3#E35U34T2#D"3 ## #!3!#"#"!#!4C$VTEfUWeFeDUC#!˛""3!3"Ûwô©wgeCDC1"3DDUSDT3ET3DS2DB4T3UCVuVàvxòáàôáàóvwáfdDeBDUC4eCFeDVvUgÜfàáx©à™òöòâ®à©áôóà®wôÜxôÜxòwâówö®âπà´®öÀπ´À∫º ™∫®ôòt1˝`!$2EeCEUDVd3D14C24T34T!#23!4TCEeCDT2#C!#C 2 2 303131312  31"DB4UTUvUfeVeDeB"3 ˜!!223""C!#˜wöòwgTDD3#344UD4T35T#5C#43$D$EDVeFxvhâàâôàâàwxwfU4U34E34U35UDVfEgwVxáhôxöàäòyôxôàâòxôwäáhôwhàgyòwäòâ™àõ©äª™õª™¨ªö´©âòd!˛a"#5U3FUEVT4D!$3#5D#5C#23$D35U#5D#$C#33"33!3!#"# #!D34UTEfUWUVeDU2#˙""3"C!#Ùw™®ávdUT2"3C!4DUSETCET3DC3DB3T4UDVuVàvxôáâ©òâòáàÜeeDeC3TC4UCEeDVuUgÜfàáx©à™òä®â©à™òô®à©áôówöñx®áâ®wö®â∫ò´πôª∫´À∫ªÀ™ªπòòc ˚^"#CEdCEeUfdDS"DC3US3US"3B3B"4T3UT3ES24C!#C#2 22 C!"31"C12  !3!#DB4fTUvUfeVuEe2"3 !˙ !!12C!#C1#¸™òàfUUC"#3"4UDET35D#4C"42#D$UDVeVxwhâxyôàyàwxwVUEUC$E34U35UDVfEgvVyáxôàöòäòy©xöàâòxöáyòxäáx©wy®xäòâ™òõ∫â´∫´º∫´º™´©àáB#y3EU3FTEgTDCE3#EC#EC$2$3#5D3ED#EC#$3#3"3"3!3"#4!#"3D35VDFfUgUVeEU2#!""33"#Úv©ôóvfeB3CC!#DeTEd3ES3DC"DB3S4UDVeVàvxòáâ©áàòwàÜeeDUC4TC4UCEeDVvUgvfxáwôáöòä®à©àöóâòàöáâ®wôóx©áâ®áö®à∫òö∫ôª ™Ã ´À∫™πáÜA˘]33EdDUTDvdDBTC3UC3UB"313B"ES3US3ER"4B32#2#2#2#2!#C!#C13 "22!#T24eTVvUwefdUd2"2 !˙ 112#2!#C!#ıvôôàffT#442$EVDEU35D#4C"42$D$U4VeVxwxâàyôxxáfxvUU4UC4E34U35UDVfEgfVxáhâxöòâòxôxâòyôxöáyôxâáhöwy©xäòy™òäªô´ª™ºª´ª∫ö©àe!˘]#FU4UD5fTE2E3$U34E2#4!42#EC4EC#EB"42#"#"#""#3#3#3#""D#5UDFfEgUVTEU"#˝!""3#3#ˆvô™óvvS3D3!"33UfTUUCDT2DC24B3S4eDfufàáx©áâòààóvxvUdDUC3UC4UCEeDfvUfvfxáwôàöòâ®à©àôóâ©áöóâ©áößx©óâ©áö®â™®öª©ªÀ∫ªÀ∫À∫™©óc ˙^ "FeDeSEeTDBT24UCDU23D2"D23US4eB3TB"D1"323032324B3C!#C!"2!124D3EeDVuUwefdEd2#2!˝ !2"1#B3B"3˚    ä™àgfC4D2˛#iEfTEU34D#43"42$D$UDWeVxwxôàxâàxáwhvUT4D3#E3$E35U4VfEWwVxágâàäòy©xöàäòyôxäòy©xäòxôáy©wä©à´ô䪙´ª´¨ª™ª∫ööáC˛!6UEU3EeD51D35E34U"$D"#D2$E34U3$D2#D13"#!#"#!$2$3#3"!"$C#5U4WeFfUVUFU"#"!"2#2#ˆuö∫ówuDTS1"32"DfTEeCDS24C"D24C4UDfufàÜxòáàòáàávwvUTCTB3TC4UCEeDVvUgvfxáwôáôòâ©à©óâ®à©áößà©áâ®wôóà©áö©à´πöÀ©´À∫ªÀ∫ª∫ô©ñB˝˚[FdEeCVeCD0$D24T3ET23S2#D24U24TB4T23C1"C131313132"3B"4B!#2! #24S2EeDVeUvefdUT2#2 ˝ " "!"1#2323˜uõ©àwUET3"#3"$VTEU35D#4342$C4UDWfVxghâwxàwxáfgvET3E3$E3$U35UDFfEgvVxágâxäòyôxôwäòxôwäòxöáyòxäòyöàä©à´©öª™´º™¨ª™´∫ôôu2˝¸\FTEU4Fe3D D#5U35D"$C"$D#5U35U3$D"#4!3!3 3!3!4242$2"#"4C#EUDVUFfUfUFT"#"˝!#"#2#2#˜u™©òÜeUS23DB 4fdUeCDS24C"DB4S4eDgufàvxôáàòáàávwuVdCUC3UC4UCEeDVvUgvfàáwôáâ®à©àöáâ®x©áâßx©áâ®áöóà™óö©ô´πöÀ∫´À∫ªÀ∫ª∫ò®t1˝"¸\VTEeDfdCT04C2ET3ET2DC"4T3ET34T24S23D1#3!C "C1C1C2"D2"4B#1 " 31DC3UdDfeVvefeUd231 ˝"" "121#2"313¸™ôâvVU3"43"4VTEU35D"43"43$C4UDgfVxwhâwxàwxáfgeFT3EC#U3$U35e4WfEgwVxáhâàäòyôxöwâòxôáäòxöáyôxäòx™àä©âõ™äº™´º∫¨ª™ª™âòS#"_#FDEU5VT4D!$3#ED3EC#43"5D#5D35T"4C"$3#333!3!424242#!#"43#ET4VUVfUfUVT"#!˛"#!#!#"#!#˜tôô©Üfd23DC!"2DeTEeBDS23C"DB4S5eTgufàÜxòáàòáàávwuUd3UC3TC4UCEeDVvUgvfxáwôáâ®à®àöóâ®w©áâ®à©áâ®áô®à™óäπò´∫öÀ∫´À∫ªÀ™ªπòóR¸a!""3eCUTEfdDT!323US3UC3DB"ES3ES3ES2DS"3C!#2#B!#C!"C1"C1#C2"C131" " 31"DB3UTDfdVvUvTVS230¸"" 3 2131313¯tâö©vgT34D"#"%VTEU35C"$342%C5UEWfWxwxâwxàghwfgeFT#EC$E3$U35UDFfEgvVxágâxäàyôxöáyògôwyòxöáyôwäòx™àä™â´™öª∫´º™´ª™´©âÜ2˝˛]"U4EDEfT4D43$UC#U3#E2#EC3EC#EC"5C$3"2$33"3"#4"4!#!""#!43#ED5fUVfEfUVC"#!¸""##"#!#!#˜tô™πÜvTDTC""32#fTETC4S"3C"324S5eUgvgàáwòáàávxáfgdVS3ES3UB4UCEeDVvUgÜfàáwôáâòà©áöáâòwôáâ®à©áâ®áô®à∫òö∫ò´ ™À∫ªÀ∫ªÀ™∫®òÑ1˝˝]23DCUTEvTDSDB4eC3UC3TB3US3US3US2EB"DB32#243!#C!#C"3D2#C13 "22!#DB4USDfdfvfvTfS"3 ¸!!22 3!313!2˚z䙩wfDED""#3!VDEU34D"#342$C5eEgfWxwhàwxàfxáfgUFT#EC#E3$U35eDWfEWwVxwgôàäòxôxöázòxôázòxöáyôwäòx™àä™ô´∫öº∫´º∫´ªö™òàd !˛{53$EDEfT5C434U3$E3$D2#EC$U3$EC#E342$"#2$3$3#3#D"$3!3""#D2$UD5fEWfVfUVC#3!"""3!3!##Ûsö∫®óuUTC"3C2UTETC4S"3B!324CEeUgufàáxòáààvxáfwdUS3EB3TC3UCEeDVvTgvfxáw©áöòà©àôáâ®w©Üâówôáx©wô®à™òâ∫òª ©ª ªÀ∫ª∫™∫òác¸2˝\#ER#TCEvTESTBEeC4T24T24eC4eC4UB3DB"DA"3132323C!3C"3C"3C!"2 2"2!#D24UCEeUfuUvUfR230!˘ 1222!C 3 3Ùsö™ôàeUT2"43!VTEU34C"#34"$C5UEgfWàwxàwxwgxáVgTED#E3#E3$U35UDFfEgvVxwgôwäòyôxöàyòxôwyòxôáy©wäòx´òä™ô´∫öª∫´º™´∫ö©àáB˚a#!#EC$U3FfDESD3EU34T"$D"$U34UC4U2$D241313!#242$34C$3""""#D"$U3EfEWeFfEVC#3!˙!"#33#3Ùs™©©®vvS23DB!4fdUdC4C"3B"424SEeUwvgàáà®áàáwàáevTUS3DC3TB4TCEeDfvUgÜfxáwôáö®à©à™óâòà©áâ®à©óà©áö∏à´®ô∫©´ ©ª ªÀ∫ª ôπàÜA˚a"!1#UC3TCEvTUR$TCEeCEd24T24d3DeCEd24T2#D1"C131C13B"4B"DC!4C!#2222!#T2EeCEeTguVvUfS3C !˙ !22C!"C 3 "2˚˛ö®ge3#4C"#$VUEU3$C"#3425CEeEgfgxwyôwxàgxáffDEC#5C#E3$E35U4WfUgwVxwgôxäòy©xöázòxôwyòhöáy©xä©x´òä´ôõªöºª´ª™´∫ä©xu !$U34vD35fDFBD4FU3FT#5D"5U35U35T3$U"D"3!3!4!32424C$3#2"""$D"5U3FfEgeVfUfC#3!"#3#3#Ùsôô™®wuC3DB!#33VeUeB4C"3B"D2DCEeUwvgàvxòáxòvàáffTUS2DC3TC4UCEeDVvUgvfàÜg©áöóâ®à©áâßw©áâ®wôóà©áä®à´®ôÀ©´À™ª ´À∫ªπö®àt ˚a" "4T24T25eTUR$T3Vd3ES2ES2ET3ET25T24T2#T!#C!"C!"C1D1"3B"DB"DC!#1"1"1#24C25dCVeUfeVuUfC3B !˙ 112"2!"2"2"2Ùsyö´òge3ED"$3FUEU3$C"#34"5CFUEgfgxgxàwxàghwfVDED"5C#D3$E35U4VfEWvVxwgôwäàyòxöáyágôwyògöáxôxä©xõ©äª©´ªö´ªõª™ª©öòxc˚a$D#$D"5U3EB$T4VT#ET#5C#5T35D#5D"5D"#D!#33!3!4"42#D243#!!!#"$D#5T4FUEgeVeEfC43˙!!"22"2Ûrà™∫®ádDTB"3D2FdEdC3C"3B"32ECFeUwvwàwxôáxòáwáfeTUS2DC"DB4TCEeDVvUgvfàÜwôáôòâ©à©áâówôáâòwôóx©áäπà´πöÀπ´À™ª∫´À™ª©öóáS˙a3"4T2ET25dCER4TDVS3US3DS"ET3ES2ET2DT24C!3C!#C2#C #C1"D2#DB"D2"31#1"132"4C2ET3VeUwefuUfS4C !˙!"1#1#2!#2"2#2¸ry™™âáUUD""43!6TEU3$C"#3##5DFeEwfgxwxâwxàwxáfUDEC#4CD2$D35UDVfEWvVhvgâwäòyôxöáäàxôwyògöáxöàz©xõ©äª©õª™´ª´ª™´ôôàwB˛#"D#5T#5T3E2%D4UC3VC#EC#ED#EC#5C#5D"$3"$3#3#3!34"#D2#42#!#!#!#"4C#ED4VUEgUWeEfC43!#""#""#"Ùr⪩ôÜfeC23CBVdDT23C!#C"32ECVeUwvgàÜxòáâòwàáfUTUS"DB"DB4T3EeDVvUgvfxÜgòwâóâòàôáâówôÜâßwôóx©áâπàõπôªπ´Àπª ´À©∫ô©áÜ1˚b22$D2Ed"ES3U14S4US4US3UB3US3TC3DS"ES24C"3B!#C!3C!#C!#C2#D23C1"3 2 3 31DC3UT3fdUvefuUuC4C!˙" " #131"1"1"2ˆrz™ôöÜfU3#43!#FUEU2#3"#33"53FeFgfgàfhàwyòwxwVUD5C"43#42$E35UDFfEWvVhwgâwäòyòxöáyàhôwyàgäàxôwz©àã©âº©õªö´ªõªö™âôwu!˝d""3"6T"5C4U1%C$UC4UC#E3#EC#E3#EC#5C"4C$2#3$333"#D"#3"3 "##!43#ED$VUFgUWeFe342˙!#!#"#!!#!
  1345. d
  1346. °dONLNd'¿Ã.(Ë:JIM°dONLNd*¿.Ã1) °dONLNd+¿0Ã^)LUTHER, Palatino °dONLNd2ú•™≠(≈√T°dONLNd3ú≠™µ)h°dONLNd4ú¥™∫)e°dONLNd5úπ™º) °dONLNd6úº™»)M°dONLNd7ú»™Œ) a°dONLNd8úŒ™”)c°dONLNd9ú”™◊)i°dONLNd:ú◊™fl)n°dONLNd;úfi™‚)t°dONLNd<ú·™Ë)o°dONLNd=úË™Ì)s°dONLNd>úÌ™ı)h°dONLNd?úı™¯) °dONLNd@ú˜™ˇ)h°dONLNdAú˛™)a°dONLNdBú™    )s°dONLNdCú    ™4) always °dONLNdKú4™9)+s°dONLNdLú9™A)u°dONLNdMú@™G)p°dONLNdNúG™N)p°dONLNdOúN™U)o°dONLNdPúU™^)rt°dONLNdRú^™d)    e°dONLNdSúd™k)d°dONLNdTúk™n) °dONLNdUúm™s)a°dONLNdVús™x)s°dONLNdWúx™~)y°dONLNdXú~™Ü)n°dONLNdYúÜ™ã)c°dONLNdZúã™ì)h°dONLNd[úí™ó)r°dONLNd\úñ™ù)o°dONLNd]úú™§)n°dONLNd^ú£™™)o°dONLNd_ú©™±)u°dONLNd`ú∞™µ)s°dONLNdaú¥™º) c°dONLNdcúº™¬)a°dONLNddú¬™Δ)l°dONLNdeú≈™…)l°dONLNdfú…™Œ)s°dONLNdgúŒ™—) °dONLNdhú—™‹)to°dONLNdjú‹™fl)  °dONLNdkúfi™)
  1347. many parts°dONLNdwÆ•º¨(◊√o°dONLNdxÆ´ºØ)f°dONLNdyÆÆºµ) i°dONLNd{Ƶºπ)t°dONLNd|Æπºæ)s°dONLNd}Ææº¡) °dONLNd~Æ¿º«)o°dONLNdÆ«ºŒ)p°dONLNdÄÆŒº‘)e°dONLNdÅÆ‘ºŸ)r°dONLNdÇÆŸºfl)a°dONLNdÉÆflº„)t°dONLNdÑÆ„ºÁ)i°dONLNdÖÆÁºÔ)n°dONLNdÜÆÔºı)g°dONLNdáÆıº˝) s°dONLNdâÆ˝º)y°dONLNdäÆº)s°dONLNdãÆº )t°dONLNdåÆ º)e°dONLNdçÆº)m°dONLNdéÆº ) .°dONLNdèÆº") °dONLNdêÆ!º))T°dONLNdëÆ)º1)h°dONLNdíÆ1º5)i°dONLNdìÆ5º:)s°dONLNdîÆ:ºC) a°dONLNdñÆCºH)    r°dONLNdóÆHºL)t°dONLNdòÆLºP)i°dONLNdôÆPºU)c°dONLNdöÆUºY)l°dONLNdõÆYº_)e°dONLNdúÆ_ºb) °dONLNdùÆbºh)e°dONLNdûÆhºn)x°dONLNdüÆnºu)p°dONLNd†Æuº{)a°dONLNd°Æ{ºÉ)n°dONLNd¢Æɺä)d°dONLNd£Æäºè)s°dONLNd§Æèºí) °dONLNd•Æíºô)o°dONLNd¶Æôº°)n°dONLNd߯†º£) °dONLNd®Æ¢º¶)t°dONLNd©Æ¶ºÆ)h°dONLNd™Æ≠º≥)e°dONLNd´Æ≤ºµ) °dONLNd¨Æµºπ)i°dONLNd≠Æπº¡)n°dONLNdÆÆ¡º≈)f°dONLNdØÆ≈ºÃ)o°dONLNd∞ÆÀº–)r°dONLNd±Æ–º‹)m°dONLNd≤Æ‹º‚) a°dONLNd≥Æ‚ºÊ)t°dONLNd¥ÆʺÍ)i°dONLNdµÆͺÒ)o°dONLNd∂ÆÒº˘)n°dONLNd∑Æ˘º¸) °dONLNd∏Ƹº)f°dONLNdπƺ)o°dONLNd∫ƺ)u°dONLNdªÆº)n°dONLNdºÆº)d°dONLNdæ¿•Œ©(È√i°dONLNdø¿®Œ∞)n°dONLNd¿¿ØŒ≤) °dONLNd¡¿≤Œ∂)I°dONLNd¬¿∂Œæ)n°dONLNd√¿æŒ√)s°dONLNdƒ¿√Œ«)i°dONLNd≈¿«ŒŒ)d°dONLNdΔ¿ŒŒ‘)e°dONLNd«¿‘Œ◊) °dONLNd»¿÷Œ‚)M°dONLNd…¿‚ŒË) a°dONLNd ¿ËŒÌ)c°dONLNdÀ¿ÌŒÒ)i°dONLNdÿҌ˘)n°dONLNdÕ¿˘Œ˝)t°dONLNdŒ¿˝Œ)o°dONLNdœ¿Œ    )s°dONLNd–¿    Œ)h°dONLNd—¿Œ) °dONLNd“¿Œ)b°dONLNd”¿Œ)y°dONLNd‘¿Œ&) t°dONLNd÷¿&Œ,)e°dONLNd◊¿,Œ0)l°dONLNdÿ¿0Œ4)l°dONLNdŸ¿4Œ8)i°dONLNd⁄¿8Œ@)n°dONLNd€¿@ŒF)g°dONLNd‹¿FŒI) °dONLNd›¿IŒS)w°dONLNdfi¿SŒ[)
  1348. h°dONLNdfl¿[Œa)e°dONLNd‡¿aŒi)n°dONLNd·¿hŒk) °dONLNd‚¿kŒu)w°dONLNd„¿uŒ})
  1349. h°dONLNd‰¿}ŒÉ)y°dONLNd¿ÇŒÖ),°dONLNdʿьá) °dONLNdÁ¿áŒç)a°dONLNdË¿çŒï)n°dONLNdÈ¿ïŒú)d°dONLNdÍ¿úŒü) °dONLNdοüŒß)h°dONLNdÏ¿ߌÆ)o°dONLNd̿ƌ∏)w°dONLNdÓ¿∏Œª)
  1350.  °dONLNdÔ¿ªŒ¡)y°dONLNd¿¡Œ»)o°dONLNdÒ¿»Œ–)u°dONLNdÚ¿œŒ“) °dONLNdÛ¿—Œ÷)s°dONLNdÙ¿÷Œfi)h°dONLNdı¿fiŒÂ)o°dONLNdˆ¿‰ŒÏ)u°dONLNd˜¿ÎŒÔ)l°dONLNd¯¿ÓŒı)d°dONLNd˘¿ÙŒ˜) °dONLNd˙¿˜Œˇ)u°dONLNd˚¿ˇŒ)s°dONLNd¸¿Œ
  1351. )e°dONLNd˛“•‡©(˚√f°dONLNdˇ“©‡±)u°dONLNd“∞‡∏)n°dONLNd“∑‡º)c°dONLNd“º‡¿)t°dONLNd“¿‡ƒ)i°dONLNd“ƒ‡À)o°dONLNd“ ‡“)n°dONLNd“—‡÷)s°dONLNd“’‡ÿ) °dONLNd“ÿ‡fi)a°dONLNd    “fi‡„)s°dONLNd
  1352. “„‡È)y°dONLNd “ȇÒ)n°dONLNd “Ò‡ˆ)c°dONLNd“ˆ‡˛)h°dONLNd“˛‡)r°dONLNd“‡
  1353. )o°dONLNd“    ‡)n°dONLNd“‡)o°dONLNd“‡)u°dONLNd“‡")s°dONLNd“"‡&)l°dONLNd“&‡,)y°dONLNd“,‡/) °dONLNd“/‡6)o°dONLNd“6‡>)n°dONLNd“>‡A) °dONLNd“@‡D)t°dONLNd“D‡L)h°dONLNd“L‡R)e°dONLNd“Q‡T) °dONLNd“T‡`)M°dONLNd“`‡f) a°dONLNd “f‡o)ci°dONLNd"“o‡w)    n°dONLNd#“w‡{)t°dONLNd$“{‡Ç)o°dONLNd%“ŇÜ)s°dONLNd&“Ö‡ç)h°dONLNd'“å‡í). °dONLNd)“í‡ñ)I°dONLNd*“ñ‡ö)t°dONLNd+“ö‡ù) °dONLNd,“ù‡°)i°dONLNd-“°‡©)n°dONLNd.“®‡≠)c°dONLNd/“≠‡±)l°dONLNd0“±‡π)u°dONLNd1“π‡¿)d°dONLNd2“¿‡Δ)e°dONLNd3“Δ‡À)s°dONLNd4“À‡Œ) °dONLNd5“Œ‡’)d°dONLNd6“’‡€)e°dONLNd7“€‡·)b°dONLNd8“·‡È)u°dONLNd9“ȇÔ)g°dONLNd:“Ô‡ı)g°dONLNd;“ı‡˘)i°dONLNd<“˘‡)n°dONLNd=“‡)g°dONLNd>“‡) °dONLNd?“‡)h°dONLNd@“‡)i°dONLNdA“‡)n°dONLNdB“‡)t°dONLNdC“‡")s°dONLNdE‰•Ú´(√a°dONLNdF‰´Ú≥)n°dONLNdG‰≥Ú∫)d°dONLNdH‰∫ÚΩ) °dONLNdI‰ΩÚ¬)s°dONLNdJ‰¬Ú…)o°dONLNdK‰…ÚÕ)l°dONLNdL‰ÃÚ‘)u°dONLNdM‰”Ú◊)t°dONLNdN‰◊Ú€)i°dONLNdO‰€Ú‚)o°dONLNdP‰‚ÚÍ)n°dONLNdQ‰ÍÚÔ)s°dONLNdR‰ÔÚÚ) °dONLNdS‰ÚÚˆ)t°dONLNdT‰ˆÚ˝)o°dONLNdU‰˝Ú) °dONLNdV‰Ú)p°dONLNdW‰Ú )r°dONLNdX‰ Ú)o°dONLNdY‰Ú)b°dONLNdZ‰Ú)l°dONLNd[‰Ú#)e°dONLNd\‰#Ú/)m°dONLNd]‰.Ú3) s°dONLNd^‰2Ú5) °dONLNd_‰5Ú:)c°dONLNd`‰:ÚA)o°dONLNda‰AÚM)m°dONLNdb‰LÚX) m°dONLNdc‰WÚ^) o°dONLNdd‰]Úe)n°dONLNde‰dÚh)l°dONLNdf‰gÚm)y°dONLNdg‰lÚo) °dONLNdh‰oÚu)e°dONLNdi‰uÚ})n°dONLNdj‰|ÚÅ)c°dONLNdk‰ÅÚà)o°dONLNdl‰àÚê)u°dONLNdm‰êÚò)n°dONLNdn‰óÚõ)t°dONLNdo‰õÚ°)e°dONLNdp‰°Ú¶)r°dONLNdq‰¶Ú¨)e°dONLNdr‰¨Ú≥)d°dONLNds‰≥Ú∂) °dONLNdt‰µÚø)w°dONLNdu‰æÚΔ)    h°dONLNdv‰≈ÚÀ)e°dONLNdw‰ÀÚ”)n°dONLNdx‰”ÚÁ) asy°dONLNd|‰ÁÚÔ)n°dONLNd}‰ÔÚÙ)c°dONLNd~‰ÙÚ¸)h°dONLNd‰¸Ú)r°dONLNdĉÚ)o°dONLNdʼnÚ)n°dONLNdljÚ)o°dONLNdɉÚ)u°dONLNdщÚ)s°dONLNd܈•™(√c°dONLNdሙ∞)a°dONLNdàˆ∞¥)l°dONLNd∥∏)l°dONLNdäˆ∏Ω)s°dONLNdãˆΩ¿) °dONLNd刿Δ)a°dONLNdçˆΔÀ)r°dONLNdéˆÀ—)e°dONLNd舗‘) °dONLNdꈑ‹)u°dONLNd눋·)s°dONLNd툷Á)e°dONLNdìˆÁÓ)d°dONLNdîˆÓÒ).
  1354. °dONLNdñ"•.(J√PWhen calling a routine synchronously, your program passes control to the routine°dONLNdÁ.•:˛* Mand doesn’t continue execution until the routine’s work has completed (either°dONLNd5:•F* Rsuccessfully or unsuccessfully). This would be like giving someone a task and then°dONLNdàF•R* Owatching them perform that task. Although the task is eventually completed, you°dONLNdÿR•^a* (don’t get anything done while you watch.°dONLNdj•v *MOn the other hand, when calling a routine asynchronously, your program passes°dONLNdPv•Ç* Wcontrol to the routine, and the program’s request is placed in a queue or, if the queue°dONLNd®Ç•é* Sis empty, executed immediately; in either case, control returns to the program very°dONLNd¸é•ö* Tquickly, even if the request can’t be executed until later. The system processes any°dONLNdQö•¶* Uqueued requests while your program is free to continue execution, then interrupts you°dONLNdß¶•≤* Qlater when the request is completed. This is like giving someone a task and going°dONLNd˘≤•æ* Tback to your work while they finish the task. In most cases, it results in more work°dONLNdNæ• ˜* Kbeing accomplished during the same period of time. Figure 1 illustrates the°dONLNdö •÷û* 6difference between synchronous and asynchronous calls.°dONLNd—‚•Ó*QOne situation in which you shouldn’t use synchronous calls is when you don’t know°dONLNd#Ó•˙* Mhow long it may take for the operation to complete, as with the PPC Toolbox’s°dONLNdq˙•* OPPCInform function, for example. PPCInform won’t complete until another program°dONLNd¡•* Qattempts to start a session with your program. This could happen immediately, but°dONLNd•* Sthe chances are far greater that it won’t. If PPCInform is called synchronously, it°dONLNdg•** Sappears that the system has locked up because the user won’t get control back until°dONLNdª*•6* Rthe call completes. If you call PPCInform asynchronously, it doesn’t matter if the°dONLNd6•B* Rfunction doesn’t complete for minutes, hours, or even days — your program (and the°dONLNdaB•N_* *rest of the system) can continue normally. s4s&,Times (v7 +
  1355. 5(äΔ
  1356. JIM LUTHER)0 works in Apple Developer(îΔ-Technical Support, focusing on AppleTalk, the*
  1357. ,File Manager, and other lower regions of the*
  1358. -operating system. Jim uses a heap/stack-based*
  1359. -organizational model in his office: there are*
  1360. ,heaps or stacks of books, papers, disks, and*
  1361. ,hardware on every square inch of shelf space*
  1362. ,and over most of the floor. He was last seen(äá)muttering to himself “Now where did I put*
  1363. that . . . ?” •(ÌWA)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )ON)
  1364.  )THE MACINTOSH  )>
  1365. March 1993ˇÙÚ◊#ˇ ˇˇˇˇ#◊ 
  1366. 45Ü6á°d
  1367. ONLNf‰
  1368. 6á+<ò6@§@§6áv+ÀÀ ˆÄÁ?Ûˆæ0Ë    ¯¿ıˆ™HË    © ıˆ™xË    ©‡ıˆ™@Ë    ©Ùˆ™0Ë    ®¿ı
  1369. ¸ÊÌ
  1370. ¸ÊÌ
  1371. ¸Ê̸ڈÚ8˝¸ÚĘÚ?˝¸Òˇ‡˜Òˇ¿˛¸Ú¿˜Ú?IJ¸ÚˆÚ<˝¸ÚˆÚ ˝
  1372. ¸ÊÌ
  1373. ¸ÊÌ
  1374. ¸ÊÌÀÀÀÀÀÀÀÀÀÀÀÀ͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿ò6@ħ@ħvá∂+͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿˜˘Ô ˚˚˜˘Ô ˚˚˜˘Ô ˚˚˜˘Ô ˚˚˜˘Ô ˚˚˜˘Ô ˚˚˜˘Ô ˚˚¯ê˘Ô ˚˚¯ê˘? ˚˚¯ê˘    Ò~ ˚˚¯ê˘    Ò ˚˚¯ê˘    Ò ˚˚¯˘7Ò ˚˚¯˘Òn ˚˚¯˘*Ò8 ˚˚¯˘*ÒT ˚˚˜˘ ÒT ˚~¸¯˘Ò ˚¸¯˘*Ò8 ˚¸¯˘ÒD ¸ê¸¯˘D ˚n¸¯˘˛Ú¸ ˝8¸¯˘"Ò| ˝T¸¯˘"Ò@ ˝T¸˜˘Ò| ¸¸˜˘ ê˝˚¯˘" ‡˝ê¸¯˘"Ò8 ˝T¸¯˘ÒT ˝ ¸¯˘T ‡˝˚¯˘>Ò ¸    ¸¸¯˘Ò ¸D¸ò6Ä¥§Ä¥§∂áÍ+¯˘>ÒT ˝D¸˜˘  ˝8¸¯˘ ¸8¸¯ê˘*Ò ˝D¸˜˘Ò~ ¯¸D¸¯˘Ô ¸8¸¯ê˘ ˝|¸¯ê˘*Òp ˝¸¯ê˘*Ò> ‡¸|¸¯ê˘ ÒB ¸˚¯    ˘B ˝˚˜˘B ‡˝¸¯˘8Ò$ ¸T¸¯˘ ¯˝ ¸¯˘!Ò8 ¸˚¯˘!ÒD`¸ê8¸˜˘!ÒD@˚T¸¯˘Ò8@˚T¸¯˘|@˚¸¯˘Ò@˚˚˜˘"Ò|@˚˚¯˘"@˚˚¯ê˘Ò@˚˚¯˘>Ò~@˚˚¯˘@˚˚˜˘>Ò|@˚˚¯˘@˚˚¯˘8@˚˚¯˘ÒD@˚˚¯˘?ÒD@˚˚¯ê˘>Ò8@˚˚˜˘@˚˚˜˘~@˚˚˜˘@˚˚˜˘"@˚˚˜˘"@˚˚˜˘@˚˚˜|˘?Ò¯˚¸˚˜|˘Ô¯˚¯˚˜<˘Ô˚x˚˜<˘Ô˚x˚˜8˘Ôp˚p˚˜˘Ô`˚0˚˜˘Ô`˚0˚͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿òŧ@§HHg¥#(IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1375. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@§6áv+'ÅÅÅ›ÅÅÅ›¶ˇˇ˛˛ˇÅ®˛ˇ˛ˇˇù §ˇˇ¸ˇ˛ˇˇÅ±ˇ˚ˇ˛ˇˇß)§ˇˇˇˇˇˇˇÅ≤ˇˇˇˇˇˇˇ®(§ˇˇˇˇˇˇˇ˛ˇÅ≤ ˇ˛ˇˇˇ˛˛ˇ®#§ ˇˇˇˇˇˇÅØ ˇˇˇˇˇˇ•'§    ˇˇˇˇˇ˛ˇˇÅ±ˇˇˇˇˇ˛ˇˇß“ˇÅ£ˇÅÏ“ˇÅ£ˇÅÏ“ˇÅ£ˇÅÏ“ˇÜ˛ˇ°ˇÜ˛ˇÍ“ˇÜ˚ˇ§ˇÜ˚ˇÌ“Ŏ˝ˇ¶Åˇ˝ˇÔ“ˇÜ˙ˇ•ˇÜ˙ˇÓ“ˇÜ˝ˇ¢ˇÜ˝ˇÎ“ˇÜˇüˇÜˇË“ˇÅ£ˇÅÏ“ˇÅ£ˇÅÏ“ˇÅ£ˇÅÏÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›˛Åˇ¡ˇ‚Ŏ¡ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++?$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$+ˇˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$+ˇˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++?$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇà˛ˇ$+$$+$$+$$+$$+$$+ˇ˝ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+ˇ$˛+$$+$$+$ˇˇ$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$"$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$ˇ˝ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+ˇ$˛+$$+$$+$ˇ˛+$$+$$+$$+$$+$$+$$˛+$$+$$+$$+$$+$$+$$+$$+$$+$$+"$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇIJˇ$++$++$++$++$++$+ˇ˚'ˇ+$++$++$++$++$++$++$++$++$+ˇ$˝ˇ+˛ˇˇ$ˇ+ˇˇ+ˇˇˇˇ+ˇ+ˇˇ+˛ˇ +$+ˇˇ+ˇˇ++˛ˇG+ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$ˇ˚(ˇ++$++$++$++$++$++$++$++$++$+ˇ$˝ˇ+˛ˇ+ˇ$ˇˇˇ+ˇˇ+˛ˇ+ˇˇ˛ˇ +$+ˇˇ+ˇˇ+˛ˇG+ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇIJˇ+%+%+%+%+%ˇ˘ˇ%+%+%+%+%+%+%+%+%+ˇˇˇ%ˇ+ˇˇˇˇ+ˇˇ%ˇˇ%ˇˇˇˇ%ˇˇ%ˇ%ˇˇ%ˇ+ˇˇˇˇ%+%+%+%+%+%+%+%+% +%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%ˇ˘ˇ+%+%+%+%+%+%+%+%+%+ˇˇˇ%ˇˇ%ˇ+ˇˇˇ%ˇ+%ˇˇ+%ˇˇ+ˇˇˇˇ+%ˇ%ˇˇ%ˇˇ%ˇ+ˇˇ%+%+%+%+%+%+%+%+% +%+%+%+%+%+%+%+%ˇˇz˛ˇ+$$+$$+$$+$$+$$ˇ˜$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ˛˛ˇ0+ˇ$˛+$ˇ˛+ˇ$˛+$$˛ˇ$ˇˇ$ˇ˛+$ˇˇ$ˇ+$ˇ+$ˇ+ˇ$˛+$ˇ˛˛ˇC+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$ˇ˜%ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ˛˛ˇ0+ˇˇ+ˇ$˛+ˇˇ+$ˇ˛+ˇ$ˇˇ$˛+$ˇ˛+ˇ$+$ˇ+$ˇ+ˇˇ+ˇ$˛˛ˇB+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇx˛ˇ+$++$++$++$++$ˇıˇ+$++$++$++$++$++$++$++$++ˇ++ˇ+ˇ$ˇ+ˇˇˇ$ˇ+ˇˇ+ˇ+ˇ+ˇˇ+ˇ+ˇ+ˇ++ˇ+ˇˇ+ˇ$ˇ+ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++ˇıˇ+$++$++$++$++$++$++$++$++ˇ++ˇ+ˇˇ+ˇ$ˇˇˇ+ˇˇ+ˇ$+ˇˇ$ˇ+ˇˇˇ$++ˇ+ˇˇ+ˇˇ+ˇ$ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇr˛ˇ+%+%+%+%+%ˇÛ$ˇ+%+%+%+%+%+%+%+%ˇ+%˛ˇ%˛ˇ    ˇ+ˇˇˇ˛ˇˇ%ˇˇˇˇ%ˇ+%ˇˇ%ˇˇ%˛ˇGˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+ˇÛ%ˇ%+%+%+%+%+%+%+%+%ˇ+%˛ˇ%˛ˇ    %ˇ+ˇˇˇ%˛ˇˇˇˇˇˇ+ˇ+%ˇˇ%ˇˇ%˛ˇGˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇp˛ˇ$+$$+$$+$$+$$ˇÒˇ$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$ˇÒˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇl˛ˇ$++$++$++$++ˇÔˇ$++$++$++$++$++$++$++$++$+ˇ+$+ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$+ˇÔˇ+$++$++$++$++$++$++$++$++$+ˇ+$+ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇh˛ˇ+%+%+%+ˇÌˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%ˇÌˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇd˛ˇ+$$+$$+$$+$ˇÎˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+ˇÎˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇ`˛ˇ+$++$++$+ˇÈˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$+ˇÈˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇ\˛ˇ+%+%+%ˇÁˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%ˇÁˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇ`˛ ˇ$+$$+$$+ˇÒ˙ˇ¸ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ ˇ$$+$$+$$ˇÒ˙ˇ¸ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇ\˛ ˇ$++$++$+ˇÒ¯ˇ¸ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$˛ˇ$++$++$++$+ˇ‚ ˇ+$++$++$ˇÒ¯ˇ¸ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+˛ˇ ++$++$++$ˇˇ\˛ ˇ+%+%ˇÚ˛ˇ¸˛ˇ¸ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%˚ˇ %+%+%ˇ‚ ˇ%+%+%ˇÚ˛ˇ¸˛ˇ¸ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%˚ˇ    +%+%ˇˇ‘˛ ˇ+$$+$$+$$ˇÙ˚ˇ˝˛ˇ˝·ˇT$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$Ïˇ
  1376. +$$+$$+$ˇ‚ ˇ+$$+$$+$ˇÙ˚ˇ˝˛ˇ˝·ˇ$$+$$+$$+$$+$$”ˇ$+$$+$$+$$+$$+Èˇ$$+$$+ˇˇf˛ˇ+$++$++$+ˇı˛ˇ˛ˇ˝˛ˇ!ˇ$++$++$++$++$++$++$++$+˝ˇN+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+˝ˇ +$++$++$+˚ˇ ++$++$++ˇ‚ˇ++$++$++$ˇı˛ˇ˛ˇ˝˛ˇ!ˇ+$++$++$++$++$++$++$++$+˛ˇ++$++$++$++˛ˇ++$++$++$++$++$++$++$++$++$++$++$+˝ˇ+$++$++$++$˛ˇ$++$++$++$++¸ˇ
  1377. ++$++$+ˇˇp˛ˇ+%+%+%+ˇ˘˚ˇ˛¸ˇˇˇ˛ˇ+%+%+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇ%+%+%+%+˛ˇ+%+%+%+%ˇ‚ˇ+%+%+%ˇ˘˚ˇ˛¸ˇˇˇ˛ˇ+%+%+%+%+%+%+%+%ˇˇ+%+%+%+ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+%+%ˇˇ+%+%+%+%+%ˇˇ+%+%+%+ˇˇl˛ˇ$+$$+$$+$$ˇ˙˝ˇ¯ˇ˝˛ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$ˇ˙˝ˇ¯ˇ˝˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇ+$$+$$+$ˇˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇˇ+$$+$$+$$ˇˇ$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇn˛ˇ$++$++$++$+ˇ˘˛ˇ˛ˇ¯˛ˇ+$++$++$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇ$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$+ˇ˘˛ˇ˛ˇ¯˛ˇ+$++$++$++$++$++$++$++$++ˇˇ+$++$++ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇ+$++$++$ˇ+$++$++$++$++$++$++$++$++$ˇˇòŧ@ħHHg∞#)IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1378. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@ħvá∂+'h˛ˇ+%+%+%+%ˇ˘˛ˇı˛ˇ%+%+%+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+ˇ˘˛ˇı˛ˇ+%+%+%+%+%+%+%+%+%ˇ+%+%+ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+%ˇˇ+%+%+%+%+%+%+%+%+%ˇˇj˛ˇ+$$+$$+$$+$$+ˇ˘˝ˇ˜˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$ˇ˘˝ˇ˜˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇl˛ˇ+$++$++$++$++ˇ˘˛ˇ˜˛ˇ++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$+ˇ˘˛ˇ˜˛ˇ$++$++$++$++$++$++$++$++$+ˇ$++$++$ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ++$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇˇn˛ˇ+%+%+%+%+%ˇÙ˝ˇ˛˛ˇ+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%ˇÙ˝ˇ˛˛ˇ+%+%+%+%+%+%+%+%+ˇˇ+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇ+%+%ˇ%+%+%+%+%+%+%+%+%+ˇˇr˛ˇ$+$$+$$+$$+$$+$ˇıˇ+$$˚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+ˇıˇ+$˚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇz˛ˇ$++$++$++$++$++$ˇ˜ˇ++$+˝ˇ+$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++ˇ˜ˇ$++$+˝ˇ+$++$++$++$++$++$++$++$++$+ˇ+$++$+ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++ˇ++$++$++$++$++$++$++$++$++$ˇˇIJˇ+%+%+%+%+%ˇ˘ˇ+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%ˇ˘ˇ%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%ˇˇÑ˛ˇ+$$+$$+$$+$$+$$+$$ˇ˚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$ $+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$ˇ˚ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$ˇ$$+ $$+$$+$$+$$+$$+$$+$$+$$+ˇˇà˛ˇ+$++$++$++$++$++$+ˇ˝ˇ$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ+!+$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$ˇ˝ˇ+$++$++$++$++$++$++$++$++$++$++$++$++ˇ++$++$ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$+ˇ+$+!+$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+ˇˇ%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%+%?+%+%+%+%ˇ+%+%ˇ%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$ˇˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$ˇˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+ˇ$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ+$++$+ˇ$++$++$++$++$++$++$++$++$++$+?+$++$++$++$+ˇ$++$++ˇ++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+ˇ+%+%+%+%+%+%+%+%+%?+%+%+%+%+ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$ˇ+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++ˇ++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ++$++$ˇ+$++$++$++$++$++$++$++$++$++?$++$++$++$++$ˇ+$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%+%?+%+%+%+%ˇ+%+%ˇ%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+ˇ$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ+$++$+ˇ$++$++$++$++$++$++$++$++$++$+?+$++$++$++$+ˇ$++$++ˇ++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+ˇ+%+%+%+%+%+%+%+%+%?+%+%+%+%+ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$ˇ+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++ˇ++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ++$++$ˇ+$++$++$++$++$++$++$++$++$++?$++$++$++$++$ˇ+$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%+%?+%+%+%+%ˇ+%+%ˇ%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+ˇ$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ+$++$+ˇ$++$++$++$++$++$++$++$++$++$+?+$++$++$++$+ˇ$++$++ˇ++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+ˇ+%+%+%+%+%+%+%+%+%?+%+%+%+%+ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$ˇ+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++ˇ++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ++$++$ˇ+$++$++$++$++$++$++$++$++$++?$++$++$++$++$ˇ+$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%+%?+%+%+%+%ˇ+%+%ˇ%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+ˇ$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ+$++$+ˇ$++$++$++$++$++$++$++$++$++$+?+$++$++$++$+ˇ$++$++ˇ++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+ˇ+%+%+%+%+%+%+%+%+%?+%+%+%+%+ˇ+%+%ˇ+%+%+%+%+%+%+%+%+%ˇˇ˛Åˇ¡ˇ‚Ŏ¡ˇˇÆˇ∑ˇÅÓˇ˘ˇ ˇ˘ˇ⁄Æˇ∑ˇÅÓˇ˘ˇ ˇ˘ˇ⁄Æˇ∑ˇÅÓˇ˘ˇ ˇ˘ˇ⁄Æˇ∑ˇÅÓˇ˘ˇ ˇ˘ˇ⁄Æˇ∑ˇÅÓˇ˘ˇ ˇ˘ˇ⁄Æˇ∑ˇÅÓˇ˘ˇ ˇ˘ˇ⁄Æˇ∑ˇÅÓˇ˘ˇ ˇ˘ˇ⁄ ∂˚ˇˇ∑ˇÅÓˇ˘ˇ ˇ˘ˇ⁄*¥˛ˇˇ∑ˇ˛˛ˇ˛ˇˇÅ˜ˇ˘ˇ ˇ˘ˇ⁄-¥ˇˇˇ∑ˇ¸ˇˇÅ˚ˇ˛ˇ˘ˇ ˇ˘ˇ⁄0¥ˇˇˇ∑ˇ¸ˇˇÅ˛ˇˇ˛ˇ˘ˇ ˇ˘ˇ⁄2∂˛ˇˇ˛ˇˇ∑ˇ¸ˇ˛Å˛˛ˇ˛ˇ˘ˇ ˇ˘ˇ⁄/µ˛ˇ˝ˇ∑ˇ˛ˇˇ˛ˇÅ˛ˇˇ˛ˇ˘ˇ ˇ˘ˇ⁄0∂ˇˇˇ˛ˇ∑ˇ˝˛ˇÅ˛ˇˇ˛ˇ˛ˇ˘ˇ ˇ˘ˇ⁄0∂ˇ˛ˇ˛ˇ∑ˇ˛ˇˇˇÅ˛˛ˇ¸ˇ˘ˇ ˇ˘ˇ⁄1¥ˇˇ˝ˇ∑ˇ˛ˇˇˇÅˇˇˇ˝ˇ˘ˇ ˇ˘ˇ⁄-Æˇ∑ˇ¸ˇˇÅ˛ˇˇˇ˝ˇ˘ˇ ˇ˘ˇ˝˚ˇ‰0µ˛ˇ˝ˇ∑ˇ˚ˇÅ¸˛ˇ¸ˇ˘ˇ ˇ˘ˇ˚˛ˇ‰7∂ˇ˛ˇ˛ˇ∑ˇ˛ˇˇˇÅ˛˛ˇ¸ˇ˘ˇ ˇ˘ˇ˚ˇˇ‰;∂ˇ˛ˇ˛ˇ∑ˇ˝ˇÅ¸ˇ˛ˇ˝ˇ˘ˇ“˚ˇˇ˘ˇ˚ˇˇ‰7∏˛˛ˇ˛ˇˇ˛ˇ∑ˇÅ˜˛˛˛˝ˇ˘ˇ ˇ˘ˇ˝˛ˇˇ˛ˇ‰1∂¸ˇ˛ˇ∑ˇ˙ˇÅ˙ˇ˝ˇ˘ˇ˝˝ˇ⁄¸ˇ˛ˇ˘ˇ¸˛ˇ‚A∂ˇ˙ˇ∑ˇ˛ˇ˛ˇÅ¸ˇ˝ˇ˘ˇ˛ˇ˝ˇ◊ˇ˛ˇ˘ˇ˝ˇˇˇ„H∂˛˛ˇ˛˛ˇ∑ˇ˛ˇ˛ˇÅˇ˘ˇ˘ˇ˛˛˝ˇ€˛˛ˇ˛˛ˇ˘ˇ˝ˇ˛ˇ„1Æˇ∑ˇ˝˛ˇÅ˛¸ˇ˝ˇ˘ˇ˛ˇ˝ˇ”ˇ˘ˇ˚ˇˇ‚+Æˇ∑ˇ˝˛ˇÅıˇ˘ˇ˝ˇˇ÷ˇ˛ˇ˘ˇ⁄<µˇ˛ˇ˝ˇ∑ˇ˛ˇ˛ˇÅˆˇ˘ˇ˝ˇ˛ˇŸˇˇ˛˛ˇˇ˘ˇ˙ˇ‚D∂ˇˇˇ˛ˇ∑ˇ˛ˇ˛ˇÅ˛˛ˇ¸ˇ˘ˇ˛ˇ˛ˇŸ˛ˇ˝ˇ˘ˇ˝ˇˇˇ„D∂ˇˇˇ˛ˇ∑ˇ˝˛ˇÅ˛ˇˇˇ˝ˇ˘ˇ˛ˇ˛ˇ⁄ˇˇˇ˛ˇ˘ˇ¸ˇ‡5¥ˇˇ˝ˇ∑ˇÅ˜ˇ˛ˇ˝ˇ˘ˇ˝˛ˇŸ˛ˇ˛˛ˇ˘ˇ⁄2≥ˇ˝ˇ∑ˇ˛¸ˇÅ˝ˇˇ¸ˇ˘ˇ–ˇˇ˝ˇ˘ˇ˙ˇ„8∂ˇˇˇ˛ˇ∑ˇ˙ˇÅ¸ˇ¸ˇ˘ˇ˛¸ˇ“ˇ˘ˇ˝ˇ˛ˇ„òŧĥ§HHg¥#*IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1379. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêêÄ¥§∂áÍ+'Cµˇ˚ˇ∑ˇ˛˛ˇ˛ˇÅ˛ˇ˛˝ˇ˘ˇ˙ˇ⁄ˇˇ˛ˇˇ˛ˇ˘ˇ˝˛˛˛„,Æˇ∑ˇÅˆˇ˙ˇ˘ˇ˛¸ˇ÷ˇ˛ˇ˘ˇ¸˛ˇ‚,≤ˇ˛ˇ∑ˇ˚ˇÅıˇ˘ˇ“¸ˇ˛ˇ˘ˇ¸˛ˇ‚@∂˛˛ˇ˛ˇˇ∑ˇ˛ˇˇˇÅ˚ˇ˝ˇ˘ˇ˙˛÷˛˛ˇ˘ˇ˝ˇ˛ˇ„0Æˇ∑ˇ˝ˇÅ¸˚ˇ˛ˇ˘ˇ˛˚ˇ”ˇ˘ˇ˝ˇ˛ˇ„(∂˛ˇ¸ˇ∑ˇÅÓˇ˘ˇ“¸ˇ˛ˇ˘ˇ¸˛ˇ‚=µˇ˛˛ˇˇ∑ˇ˝ˇˇ˛Åıˇ˘ˇ˛ˇˇ˛ˇˇ⁄ˇ˙ˇ˘ˇ˝˛˛ˇ˛„<∂ˇ˝ˇˇ∑ˇ˛ˇˇˇÅ˛ˇ˚ˇ˘ˇ˙ˇ⁄¸ˇ˛ˇ˘ˇ˘ˇ„7∂ˇ˝ˇˇ∑ˇ˛ˇˇˇÅ˛¸ˇ˛ˇ˘ˇ˝˛ˇ—ˇ˘ˇ˝¸ˇ„8∂˛˝ˇˇ∑ˇ¸ˇˇÅ˛ˇ˝ˇ˛ˇ˘ˇ˛˛˛˛“ˇ˘ˇ⁄7µˇˇ˛ˇ∑ˇÅ˜ˇ˝ˇ˛ˇ˘ˇ˛ˇ˛ˇ‹˙ˇ˛ˇ˘ˇ⁄4Æˇ∑ˇÅ˜ˇ˝ˇ˛ˇ˘ˇ˝˛ˇŸˇ˛ˇ˛ˇ˘ˇ˙ˇ‚=µˇ˛ˇ˝ˇ∑ˇ˛˛ˇÅ¸ˇ˛˝ˇ˘ˇ“ˇ˛ˇ˛ˇ˘ˇ˝˛ˇ˛„4∂ˇ˛ˇ˛ˇ∑ˇ˝¸ˇÅ˜ˇ˘ˇ˛˚ˇ⁄˛ˇ˝ˇ˘ˇ¸ˇ‡5∂ˇ˛ˇ˛ˇ∑ˇ˛ˇ˝ˇÅ˛ˇ¸ˇ˘ˇŒˇ˛ˇ˘ˇ⁄>µ˛ˇ˝ˇ∑ˇ˛ˇ˝˛Åˇ˛ˇ˛ˇˇ˘ˇ“˛˛ˇ˛ˇˇ˘ˇ¸ˇ˛ˇ‚3Æˇ∑ˇ˛ˇ˝ˇÅˇ˛ˇ˛ˇ¯ˇ ˇ˘ˇ˝ˇˇˇ„3∂¸ˇ˛ˇ∑ˇ˝ˇˇÅ˛˛ˇ˝ˇ¯ˇ ˇ˘ˇ˝ˇˇˇ„-≤ˇ˛ˇ∑ˇÅ˜˛˛ˇ˛˛ˇ¯ˇ ˇ˘ˇ˚ˇˇ‚(∂¸ˇ˛ˇ∑ˇ˝˛ˇÅ˙ˇ˛ˇ¯ˇ ˇ˘ˇ⁄)Æˇ∑ˇ˛ˇ˛ˇÅ¸ˇ˛ˇ¯ˇ ˇ˘ˇ⁄(≤˛˛ˇ∑ˇ˛ˇ˛ˇÅ˜ˇ¯ˇ ˇ˘ˇ⁄(∂˚ˇˇ∑ˇ˝˛ˇÅ˙ˇ˛ˇ¯ˇ ˇ˘ˇ⁄)∂¸ˇ˛ˇ∑ˇ˛¸ˇÅ˚ˇˇ¯ˇ ˇ˘ˇ⁄$≤ˇ˛ˇ∑ˇ˙ˇÅ˜ˇ¯ˇ ˇ˘ˇ⁄%Æˇ∑ˇ˛¸ˇÅ¸ˇ˛ˇ¯ˇ ˇ˘ˇ⁄$µ˛ˇ˝ˇ∑ˇÅÛˇ˛ˇ¯ˇ ˇ˘ˇ⁄*∂˛˛˛˛ˇ∑ˇÅˆˇ˛ˇ˝ˇ¯ˇ ˇ˘ˇ⁄0∂ˇ˛ˇ˛ˇ∑ˇ˙ˇÅˇ˛ˇ˛ˇ¯ˇ ˇ˘ˇ⁄+µ˛ˇ˝ˇ∑ˇ˛˚ˇÅˇ˛ˇ˛ˇ¯ˇ ˇ˘ˇ⁄/∂ˇˇ˛˛ˇˇ∑ˇ˛˛ˇ˛ˇÅ˛˛ˇ˝ˇ¯ˇ ˇ˘ˇ⁄ Æˇ∑ˇ˙ˇÅ˜ˇ¯ˇ ˇ˘ˇ⁄ Æˇ∑ˇÅ˜˚ˇˇ¯ˇ ˇ˘ˇ⁄"Æˇ∑ˇ˝˛ˇˇÅˆˇ¯ˇ ˇ˘ˇ⁄$Æˇ∑ˇ˛ˇ˛ˇÅ˜ˇ¯ˇ ˇ˘ˇ⁄$Æˇ∑ˇ˛ˇ˛ˇÅ˜ˇ¯ˇ ˇ˘ˇ⁄"Æˇ∑ˇ˝ˇˇ˛Åˆˇ¯ˇ ˇ˘ˇ⁄ ∞¸ˇπˇ˛˚ˇÅ˙˚ˇ˚ˇÕ˚ˇ˚ˇ⁄∞¸ˇπˇÅ¸ˇ˚ˇÕ¸ˇ˙ˇ⁄Ø˝ˇπˇÅ˝ˇ˙ˇÃ˝ˇ˙ˇ⁄Ø˝ˇπˇÅ˝ˇ˙ˇÃ˝ˇ˙ˇ⁄Ø˛ˇ∏ˇÅÔ˛ˇ˙ˇÃ˛ˇ˘ˇ⁄Æˇˇ∏ˇÅÔˇˇ˘ˇÀˇˇ˘ˇ⁄Æˇˇ∏ˇÅÔˇˇ˘ˇÀˇˇ˘ˇ⁄˛Åˇ¡ˇ‚Ŏ¡ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++?$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇò6@§@§Íá*+͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿͡‡˛?͡¿ÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀ˘¿˝@Ó˝@¯˘1ÕÕú Aô@Ó
  1380. ëÕÕú Aô@¯˘ SJU*ÇM@Ó SJU*ÇM@¯¯kQJU*B5@ÓãQJU*B5@¯˘+SJU*"e@ÓKSJU*"e@¯˘≈MIîŒAù@ÓÖMIîŒAù@¯
  1381. ¯ÊÒ
  1382. ¯ Ê ÒÀÀÀÀÀÀÀÀÀÀÀò6@ħ@ħ*áj+ÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀò6Ä¥§Ä¥§jáû+ÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀòŧ@§HHg∞#+IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1383. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@§Íá*+'䲡+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++?$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++?$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇܲAˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+˝ˇy%+%+%+%+%ˇ+ˇ+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚@ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%˝ˇz+%+%+%+%+ˇˇ+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇà˛Fˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$˛˛ˇ+$ˇ˛+ˇˇ+ˇˇˇˇ$˛˛ˇ+$ˇ˛ˇ$$+ˇ$ˇ$$ˇˇ$ˇˇ$˛ˇ$ˇ˛˛ˇA+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚_ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+ˇˇ˛ˇ$$ˇˇ$˛ˇ$$˛ˇ$ˇ˛+ˇˇ˛ˇ$$˛ˇ+$$˛+$ˇ+$ˇ˛+$ˇ˛+ˇˇ˛ˇD˛ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ++$ˇˇ+$ˇˇ$+ˇˇ$++ˇˇˇ$ˇˇ+ˇ+ˇ$+ˇ+$+ˇ+$+ˇ$ˇˇ+$+ˇˇ+ˇˇ+ˇ+ˇ+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ+$+ˇˇ+ˇ$ˇ+ˇˇ+$+ˇˇ$ˇˇˇ+ˇ+$ˇ+ˇ++ˇ++$ˇˇˇ++$ˇˇ+$ˇˇ+ˇ+ˇ+$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇ~˛Kˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%ˇˇ%ˇ+¸ˇ"ˇˇˇ+ˇˇˇ%ˇ+ˇˇ%+ˇ+ˇˇ+ˇ+˚ˇEˇ%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚Jˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+ˇˇ+ˇ¸ˇ"+%ˇˇ+ˇˇ+ˇˇˇ%ˇ+%ˇ+%ˇ+%ˇ+ˇˇ+%˚ˇF%ˇˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+ˇˇ+ˇ$˛+$$˛+$ˇ+ˇ$˛+ˇˇˇ$$˛+$ˇ+$$ˇ$$˛+ˇ$ˇ$$˛ˇ$$ˇ$ˇˇ$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$˛ˇ$$˛+ˇ$+ˇ$ˇ$$˛+ˇ$˛ˇ$ˇ+ˇ$ˇ$$+$ˇ+ˇ$˛+$ˇ+ˇˇ+$ˇˇ$ˇ+$?$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇܲAˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+˝ˇ+˛ˇ    +$+ˇˇ$ˇ+$˛ˇ    $ˇˇˇ+ˇ+$+˛ˇ[++$ˇ+$+ˇ+$ˇ+$ˇˇˇ+ˇ+ˇ+ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚@ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$˝ˇ+˛ˇ    ++ˇˇˇ$+˛ˇ    ˇ$ˇˇ+ˇ++˛ˇ\+$+ˇ$++ˇ+ˇ$+ˇ$ˇˇ+ˇ+ˇ+ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%ˇ+%+%ˇ%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%ˇ%+%+%ˇ+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$ˇ˛+$$+$$+ˇˇ+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$ˇˇ$+$$+$$˛ˇ$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++?$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇä˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+?$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ‚ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇä˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ‚ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+?+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+?%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇä˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$?+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ‚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$?$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇä˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$?++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ‚ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++?$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇä˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ‚ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%?+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇˇ˛Åˇ¡ˇ‚Ŏ¡ˇˇÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ› ∫˛ˇÙˇ⁄ˇˇÅfiˇˇ⁄ˇˇø~ªˇ˛ˇˇ˛˛ˇˇˇ˛ˇˇˇˇˇ˛ˇ ˇˇˇˇˇ¸
  1384. ˇˇˇˇˇˇÅflˇˇˇˇ˛˛ˇˇˇ˛ˇˇˇˇˇ˛ˇ ˇˇˇˇˇ¸
  1385. ˇˇˇˇˇˇø~ªˇ˛˝$ˇˇ˛ˇ˛ˇ˛ˇˇˇˇ˛ˇ˛ˇˇˇˇ¸ ˇˇˇˇ˛ˇÅflˇˇ˛˝$ˇˇ˛ˇ˛ˇ˛ˇˇˇˇ˛ˇ˛ˇˇˇˇ¸ ˇˇˇˇ˛ˇø{∏
  1386. ˇˇˇˇˇˇˇ˛ˇˇˇˇˇˇˇˇˇˇˇˇ˝ˇ˛ˇˇˇˇˇÅ‡˚ˇ˛ˇˇˇˇˇ˛ˇˇˇˇˇˇˇˇˇˇˇˇ˝ˇ˛ˇˇˇˇˇøÖªˇ˛$ˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇ˛ˇ˛ ˇˇˇˇˇˇÅ‡ˇ˛'ˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇ˛ˇ˛ ˇˇˇˇˇˇø∫ˇˇ˛˛$˛ˇ˛ˇ˛ˇ˛ˇˇˇˇ˛ˇ˛ˇ˛ˇ˛¸
  1387. ˇˇˇˇ˛ˇ˛Å‡ˇ˛ˇˇ˝$˛ˇ˛ˇ˛ˇ˛ˇˇˇˇ˛ˇ˛ˇ˛ˇ˛¸
  1388. ˇˇˇˇ˛ˇ˛ø ¥ˇÅ¢ˇãµˇˇÅ£ˇˇãÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›òŧ@ħHHg¥#,IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1389. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@ħ*áj+'ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›òŧĥ§HHg∞#-IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1390. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêêÄ¥§jáû+'ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›ÅÅÅ›
  1391. <°d
  1392. ONLNf§
  1393. 6á+<°d
  1394. ONLNf¥,     Helvetica.ȧȧ+á6 °d
  1395. ONLNf÷fi
  1396. d    .°dONLNdñ!æ(=¥Figure 1°dONLNd    "ñ-Z* +How Synchronous and Asynchronous Calls Work, Palatino
  1397. °dONLNd5?ñKÒ*LYou should also avoid synchronous calls when you can’t know the state of the°dONLNdÇKñW˙* Oservice you’ve asked for. Program code that’s part of a completion routine, VBL°dONLNd“Wñcˆ* Ltask, Time Manager task, Deferred Task Manager task, or interrupt handler is°dONLNdcño;* #executed at what’s commonly called °dONLNdBc;o~)•interrupt time.°dONLNdQc~o˜)C Synchronous calls made at°dONLNdloñ{ (ó¥Sinterrupt time often result in deadlock. (See “Deadlock.”) An asynchronous call can°dONLNd¿{ñá˚* Qsolve the problem: if the service you call is busy handling another request, your°dONLNdáñì* Rasynchronous request is queued and your program code can give up control (that is,°dONLNdeìñüÛ* Qthe completion routine or task your code is part of can end), letting the service°dONLNd∑üñ´∏* Acomplete the current request and eventually process your request.°dONLNd˘∑ñ√*ORoutines called synchronously are allowed to move memory, while routines called°dONLNdI√ñœÛ* Jasynchronously purposely avoid moving memory so that they can be called at°dONLNdîœñ€* Hinterrupt time. For example, the File Manager’s PBHOpen routine may move°dONLNd›€ñÁ    * Omemory when called synchronously, but won’t when called asynchronously. If your°dONLNd-ÁñÛ* Pcode is executing in an environment where memory can’t be moved (for example, at°dONLNd~Ûñˇ˘* Pinterrupt time), you must call routines asynchronously to ensure that they don’t°dONLNdœˇñ ◊* move memory.°dONLNd‹ñ#**#At this time, the various lists in °dONLNdˇ*#x)îInside Macintosh°dONLNdx#)N of “Routines That May Move or°dONLNd.#ñ/Ú(K¥GPurge Memory,” “Routines and Their Memory Behavior,” and “Routines That xBx/,Times ({/ +
  1398. 6+md)e)v)e)l)o)p)  )
  1399. March 1993ˇ†æ†¬°¿/, 128 string def°¿5{currentfile , readstring {(,,,,,,,,,,,,,,,,) search°¿K{pop pop pop {currentfile read {46 eq {exit} if} {exit} ifelse} loop exit}°¿+{pop} ifelse} {pop exit} ifelse} bind loop†ø†æ†¬°¿í,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.†ø†æ†¬°¿+%%BeginDocument: Adobe Illustrator(TM) 3.2°¿%!PS-Adobe-3.0 °¿    EPSF-3.0°¿%%%Creator: Adobe Illustrator(TM) 3.2°¿%%For: (Karen Brady) (Mine)°¿#%%CreationDate: (1/4/93) (4:24 PM)°¿%%BoundingBox: 105 278 525 511°¿'%%DocumentProcessColors: Magenta Black°¿%%DocumentFonts: Helvetica°¿=%%DocumentSuppliedResources: procset Adobe_packedarray 2.0 0°¿"%%+ procset Adobe_cmykcolor 1.1 0°¿%%+ procset Adobe_cshow 1.1 0°¿$%%+ procset Adobe_customcolor 1.0 0°¿'%%+ procset Adobe_typography_AI3 1.0 1°¿)%%+ procset Adobe_IllustratorA_AI3 1.0 1°¿%AI3_ColorUsage: Color°¿)%%DocumentCustomColors: (PANTONE 322 CV)°¿3%%CMYKCustomColor: 1 0 0.38 0.305 (PANTONE 322 CV)°¿%AI3_Cropmarks: 83 261 541 521°¿"%AI3_TemplateBox: 306 396 306 396°¿%AI3_TileBox: 30 31 582 761°¿$%AI3_DocumentPreview: Macintosh_Pic°¿%%EndComments°¿%%BeginProlog†ø†æ†¬°¿1%%BeginResource: procset Adobe_packedarray 2.0 0°¿"%%Title: (Packed Array Operators)°¿%%Version: 2.0 °¿%%CreationDate: (8/2/90) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿1userdict /Adobe_packedarray 5 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/packedarray where°¿    {°¿    pop°¿    }°¿    {°¿    Adobe_packedarray begin°¿    Adobe_packedarray°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿        userdict 3 1 roll put°¿         } forall°¿    end°¿
  1400.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿} def°¿2/packedarray        % arguments count packedarray array°¿{°¿array astore readonly°¿} def°¿%/setpacking            % boolean setpacking -°¿{°¿pop°¿} def°¿(/currentpacking        % - setpacking boolean°¿{°¿false°¿} def°¿currentdict readonly pop end°¿%%EndResource°¿'Adobe_packedarray /initialize get exec°¿/%%BeginResource: procset Adobe_cmykcolor 1.1 0°¿ %%Title: (CMYK Color Operators)°¿%%Version: 1.1 °¿%%CreationDate: (1/23/89) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿/userdict /Adobe_cmykcolor 4 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/setcmykcolor where°¿    {°¿    pop°¿    }°¿    {°¿5    userdict /Adobe_cmykcolor_vars 2 dict dup begin put°¿    /_setrgbcolor°¿        /setrgbcolor load def°¿    /_currentrgbcolor°¿        /currentrgbcolor load def°¿    Adobe_cmykcolor begin°¿    Adobe_cmykcolor°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿
  1401.         pop pop°¿         } forall°¿    end°¿    end°¿    Adobe_cmykcolor begin°¿
  1402.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿currentdict Adobe_cmykcolor eq°¿    {°¿    end°¿    } if°¿} def°¿:/setcmykcolor        % cyan magenta yellow black setcmykcolor -°¿{°¿1 sub 4 1 roll°¿3°¿    {°¿    3 index add neg dup 0 lt°¿        {°¿        pop 0°¿        } if°¿
  1403.     3 1 roll°¿
  1404.     } repeat°¿,Adobe_cmykcolor_vars /_setrgbcolor get exec°¿pop°¿} def °¿A/currentcmykcolor    % - currentcmykcolor cyan magenta yellow black°¿{°¿0Adobe_cmykcolor_vars /_currentrgbcolor get exec°¿3°¿    {°¿    1 sub neg 3 1 roll°¿
  1405.     } repeat°¿0°¿} def°¿currentdict readonly pop end°¿ setpacking°¿%%EndResource°¿+%%BeginResource: procset Adobe_cshow 1.1 0°¿%%Title: (cshow Operator)°¿%%Version: 1.1 °¿%%CreationDate: (1/23/89) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿+userdict /Adobe_cshow 3 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/cshow where°¿    {°¿    pop°¿    }°¿    {°¿1    userdict /Adobe_cshow_vars 1 dict dup begin put°¿    /_cshow        % - _cshow proc°¿            {} def°¿    Adobe_cshow begin°¿    Adobe_cshow°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿        userdict 3 1 roll put°¿         } forall°¿    end°¿    end°¿
  1406.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿} def°¿ /cshow                % proc string cshow -°¿{°¿exch°¿Adobe_cshow_vars°¿    exch /_cshow°¿
  1407.     exch put°¿    {°¿'    0 0 Adobe_cshow_vars /_cshow get exec°¿
  1408.     } forall°¿} def°¿currentdict readonly pop end°¿ setpacking°¿%%EndResource°¿1%%BeginResource: procset Adobe_customcolor 1.0 0°¿"%%Title: (Custom Color Operators)°¿%%Version: 1.0 °¿%%CreationDate: (5/9/88) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿1userdict /Adobe_customcolor 5 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/setcustomcolor where°¿    {°¿    pop°¿    }°¿    {°¿    Adobe_customcolor begin°¿    Adobe_customcolor°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿
  1409.         pop pop°¿         } forall°¿    end°¿    Adobe_customcolor begin°¿
  1410.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿!currentdict Adobe_customcolor eq°¿    {°¿    end°¿    } if°¿} def°¿Q/findcmykcustomcolor    % cyan magenta yellow black name findcmykcustomcolor object°¿{°¿5 packedarray°¿}  def°¿0/setcustomcolor        % object tint setcustomcolor -°¿{°¿exch°¿aload pop pop°¿4°¿    {°¿    4 index mul 4 1 roll°¿
  1411.     } repeat°¿5 -1 roll pop°¿setcmykcolor°¿} def°¿(/setoverprint        % boolean setoverprint -°¿{°¿pop°¿} def°¿currentdict readonly pop end°¿ setpacking°¿%%EndResource°¿4%%BeginResource: procset Adobe_typography_AI3 1.1 0°¿ %%Title: (Typography Operators)°¿%%Version: 1.0 °¿%%CreationDate:(5/31/90) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿5userdict /Adobe_typography_AI3 47 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/TZ°¿ where°¿    {°¿    pop°¿    }°¿    {°¿    Adobe_typography_AI3 begin°¿    Adobe_typography_AI3°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿
  1412.         pop pop°¿         } forall°¿    end°¿    Adobe_typography_AI3 begin°¿
  1413.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿$currentdict Adobe_typography_AI3 eq°¿    {°¿    end°¿    } if°¿} def°¿b% [ number value stream [ array for encoding modification ] modifyEncoding ==> [ modified array ]°¿/modifyEncoding°¿{°¿    /_tempEncode exch ddef°¿    °¿$    % pointer for sequential encodings°¿    /_pntr 0 ddef°¿    °¿    {°¿        % get bottom object°¿        counttomark -1 roll°¿        % is it a mark ?°¿        dup type dup /marktype eq         °¿        {°¿
  1414.             % exit°¿            pop pop exit°¿        }°¿        {°¿            % ... object ... type ....°¿            % insert if a nametype°¿            /nametype eq°¿            {°¿5                % insert the name at _pntr and increment pointer°¿B                _tempEncode /_pntr dup load dup 3 1 roll 1 add ddef 3 -1 roll°¿                put°¿            }°¿            {°¿#                % reset _pntr if it's a number°¿                /_pntr exch ddef                    °¿            }°¿
  1415.             ifelse°¿        }°¿            ifelse°¿    }°¿    loop    °¿    °¿     % return the modified encoding°¿    _tempEncode°¿}°¿def°¿9/TE    % Set std platform encoding     % (encoding pairs) TE -°¿{°¿1    StandardEncoding 256 array copy modifyEncoding °¿    /_nativeEncoding exch def°¿} def°¿% re-define font°¿% expected arguments°¿% for 'normal fonts : °¿L% [ /_Helvetica-Bold/Helvetica-Bold direction fontScript defaultEncoding TZ°¿%°¿5% for cartographic, pictographic, and expert fonts :°¿1% [ ... number value stream ... /_Symbol/Symbol °¿*%    direction fontScript defaultEncoding TZ°¿*% for blended fonts w/ default encoding :°¿-% [ /_AdobeSans_20ULig1XCond-Bold/AdobeSans °¿;%    direction fontScript defaultEncoding [ w0 w1 ... wn ] TZ°¿*% for blended fonts w/ special encoding :°¿D% [ ... number value stream ... /_AdobeSans_20ULig1XCond/AdobeSans °¿;%    direction fontScript defaultEncoding [ w0 w1 ... wn ] TZ°¿/TZ        °¿{°¿"    % set weight vector (if present)°¿=    dup type /arraytype eq {/_wv exch def} {/_wv 0 def} ifelse °¿"    % platform dependent coding flag°¿    /_useNativeEncoding exch def°¿    % pop fontScript & direction°¿        pop pop°¿    °¿'    % create a new dictionary with length°¿+    % equal to original dictionary length + 2°¿+    % copy all the key/value pairs except FID°¿C    % call makeblended font with the weight values if _wv is an array°¿P    findfont _wv type /arraytype eq {_wv makeblendedfont} if dup length 2 add dict°¿    °¿    begin°¿    °¿$        % copy all the values but the FID°¿        % into the new dictionary°¿         mark exch°¿        {°¿/            1 index /FID ne { def } if cleartomark mark°¿        }°¿            forall°¿        % discard last mark°¿        pop°¿        °¿        % define FontName°¿        /FontName exch def°¿        °¿(        % if no re-encoding stream is present°¿1        % then if the base encoding vector of the font°¿$        % is the same as StandardEncoding°¿/        % and the use platform encoding flag is true°¿&        % then install AI platform encoding°¿+        % else leave the base encoding in effect°¿        counttomark 0 eq°¿        {°¿            1 _useNativeEncoding eq°¿            {°¿"                /Encoding _nativeEncoding def°¿            }°¿            if°¿            % clean up°¿            cleartomark°¿        }°¿        {    °¿             % custom encoding to be done°¿;            % start off with a copy of the font's standard encoding°¿"            /Encoding load 256 array copy °¿%            modifyEncoding /Encoding exch def°¿        }°¿         ifelse        °¿        FontName currentdict°¿    end°¿    °¿    % register the new font°¿    definefont pop°¿}°¿def°¿% text painting operators°¿"/tr                    % string tr ax ay string °¿{°¿_ax _ay 3 2 roll°¿} def°¿2/trj                % string trj cx cy fillchar ax ay string °¿{°¿_cx _cy _sp _ax _ay 6 5 roll°¿} def°¿/a0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿    dup °¿    currentpoint 3 2 roll°¿        tr _psf°¿    newpath moveto°¿    tr _ctm _pss°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿    dup°¿    currentpoint 3 2 roll°¿     trj _pjsf°¿    newpath moveto°¿    trj _ctm _pjss°¿    } ddef°¿    °¿} def°¿/a1°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿!    dup currentpoint 4 2 roll gsave°¿    dup currentpoint 3 2 roll°¿        tr _psf°¿    newpath moveto°¿    tr _ctm _pss°¿     grestore 3 1 roll moveto tr sp°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿!    dup currentpoint 4 2 roll gsave°¿    dup currentpoint 3 2 roll°¿     trj _pjsf°¿    newpath moveto°¿    trj _ctm _pjss°¿     grestore 3 1 roll moveto tr sp°¿    } ddef°¿    °¿} def°¿/e0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿        tr _psf°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿     trj _pjsf°¿    } ddef°¿} def°¿/e1°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿"    dup currentpoint 4 2 roll gsave °¿     tr _psf  °¿!    grestore 3 1 roll moveto tr sp °¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿"    dup currentpoint 4 2 roll gsave °¿     trj _pjsf°¿!    grestore 3 1 roll moveto tr sp °¿    } ddef°¿} def°¿/i0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿    tr sp°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿        trj jsp°¿    } ddef°¿} def°¿/i1°¿{°¿W N°¿} def°¿/o0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿    tr sw rmoveto°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿    trj swj rmoveto°¿    } ddef°¿} def°¿/r0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿    tr _ctm _pss°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿    trj _ctm _pjss°¿    } ddef°¿} def°¿/r1°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿=    dup currentpoint 4 2 roll currentpoint gsave newpath moveto°¿    tr _ctm _pss °¿!    grestore 3 1 roll moveto tr sp °¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿=    dup currentpoint 4 2 roll currentpoint gsave newpath moveto°¿    trj _ctm _pjss°¿!    grestore 3 1 roll moveto tr sp °¿    } ddef°¿} def°¿% font operators°¿
  1416. % Binding°¿&/To    % begin text                     % bindType To -°¿{°¿    pop _ctm currentmatrix pop°¿} def°¿/TO    % end text                    % TO -°¿{°¿    Te _ctm setmatrix newpath°¿} def°¿% Text paths°¿6/Tp    % begin text path                % a b c d tx ty startPt Tp -°¿{°¿$    pop _tm astore pop _ctm setmatrix °¿"    _tDict begin /W {} def /h {} def°¿} def°¿/TP    % end text path                    % TP -°¿{°¿    end°¿    iTm 0 0 moveto°¿} def°¿!% Render mode & matrix operators°¿&/Tr    % begin render                    % render Tr - °¿{°¿/    _render 3 le {currentpoint newpath moveto} if°¿/    dup 8 eq {pop 0} {dup 9 eq {pop 1} if} ifelse°¿    dup /_render exch ddef°¿!    _renderStart exch get load exec°¿} def°¿K/iTm % internal set text matrix        % - iTm -    (uses _tm as implicit argument)°¿{°¿8_ctm setmatrix _tm concat 0 _rise translate _hs 1 scale°¿} def°¿./Tm % set text matrix                % a b c d tx ty Tm -°¿{°¿_tm astore pop iTm 0 0 moveto°¿} def°¿+/Td % translate text matrix         % tx ty Td -°¿{°¿7_mtx translate _tm _tm concatmatrix pop iTm 0 0 moveto°¿} def°¿/Te    % end render                    % - Te -°¿{°¿W    _render -1 eq {} {_renderEnd _render get dup null ne {load exec} {pop} ifelse} ifelse°¿    /_render -1 ddef°¿} def°¿% Attributes°¿)/Ta    % set alignment                    % alignment Ta -°¿{°¿pop°¿} def°¿3/Tf    % set font name and size        % fontname size Tf -°¿{°¿dup 1000 div /_fScl exch ddef°¿%exch findfont exch scalefont setfont°¿} def°¿6/Tl    % set leading                    % leading paragraphLeading Tl -°¿{°¿pop°¿ exch _leading astore pop°¿} def°¿//Tt    % set user tracking                % userTracking Tt -°¿{°¿pop°¿} def°¿</TW % set word spacing                % minSpace optSpace maxSpace TW -°¿{°¿3 npop°¿} def°¿0/Tw    % set computed word spacing        % wordSpace Tw°¿{°¿/_cx exch ddef°¿} def°¿@/TC % set character spacing            % minSpace optSpace maxSpace TC -°¿{°¿3 npop°¿} def°¿2/Tc    % set computed char spacing     % charSpace Tc -°¿{°¿/_ax exch ddef°¿} def°¿0/Ts % set super/subscripting (rise)    % rise Ts -°¿{°¿/_rise exch ddef°¿currentpoint°¿iTm°¿moveto°¿} def°¿M/Ti    % set indentation                % firstStartIndent otherStartIndent stopIndent Ti -°¿{°¿3 npop°¿} def°¿2/Tz % set horizontal scaling        % scalePercent Tz -°¿{°¿100 div /_hs exch ddef°¿iTm°¿} def°¿-/TA % set pairwise kerning            % autoKern TA -°¿+                                    %    autoKern = 0 -> no pair kerning°¿,                                    %             = 1 -> automatic pair kerning°¿{°¿pop°¿} def°¿0/Tq % set hanging quotes            % hangingQuotes Tq -°¿3                                    %    hangingQuotes     = 0 -> no hanging quotes°¿&                                    %                     = 1 -> hanging quotes°¿{°¿pop°¿} def°¿% Text Bodies°¿/TX {pop} def°¿.%/Tx    % non-justified text            % textString Tx -°¿+%/Tj    % justified text                % textString Tj -°¿+/Tk    % kern                            % autoKern kernValue Tk -°¿;                                    %      autoKern = 0 -> manual kern, = 1 -> auto kern°¿3                                    %    kernValue = kern value in em/1000 space°¿{°¿!exch pop _fScl mul neg 0 rmoveto°¿} def°¿5/TK    % non-printing kern                % autoKern kernValue TK -°¿{°¿2 npop°¿} def°¿+/T* % carriage return & line feed    % - T* -°¿{°¿_leading aload pop neg Td°¿} def°¿6/T*- % carriage return & negative line feed    % - T*- -°¿{°¿_leading aload pop Td°¿} def°¿,/T-    % print a discretionary hyphen    % - T- -°¿{°¿ _hyphen Tx°¿} def°¿+/T+    % discretionary hyphen hyphen    % - T+ -°¿{} def°¿3/TR    % reset pattern matrix             % a b c d tx ty TR -°¿{°¿_ctm currentmatrix pop     °¿_tm astore pop °¿iTm 0 0 moveto °¿} def°¿4/TS    % special chars                    % textString justified TS -°¿{°¿0 eq {Tx} {Tj} ifelse°¿} def°¿currentdict readonly pop end°¿ setpacking°¿%%EndResource°¿6%%BeginResource: procset Adobe_IllustratorA_AI3 1.0 2°¿@%%Title: (Adobe Illustrator (R) Version 3.0 Abbreviated Prolog)°¿%%Version: 1.0 °¿%%CreationDate: (7/22/89) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿7userdict /Adobe_IllustratorA_AI3 61 dict dup begin put°¿% initialization°¿ /initialize                % - initialize -°¿{°¿I% 47 vars, but leave slack of 10 entries for custom Postscript fragments°¿<userdict /Adobe_IllustratorA_AI3_vars 57 dict dup begin put°¿% paint operands°¿/_lp /none def°¿ /_pf {} def°¿ /_ps {} def°¿/_psf {} def°¿/_pss {} def°¿/_pjsf {} def°¿/_pjss {} def°¿/_pola 0 def°¿/_doClip 0 def°¿% paint operators°¿$/cf    currentflat def    % - cf flatness°¿% typography operands°¿/_tm matrix def°¿5/_renderStart [/e0 /r0 /a0 /o0 /e1 /r1 /a1 /i0] def °¿6/_renderEnd [null null null null /i1 /i1 /i1 /i1] def°¿/_render -1 def°¿/_rise 0 def°¿]/_ax 0 def            % x character spacing    (_ax, _ay, _cx, _cy follows awidthshow naming convention)°¿#/_ay 0 def            % y character spacing°¿/_cx 0 def            % x word spacing°¿/_cy 0 def            % y word spacing°¿/_leading [0 0] def°¿/_ctm matrix def°¿/_mtx matrix def°¿/_sp 16#020 def°¿/_hyphen (-) def°¿/_fScl 0 def°¿ /_cnt 0 def°¿ /_hs 1 def°¿/_nativeEncoding 0 def°¿/_useNativeEncoding 0 def°¿/_tempEncode 0 def°¿/_pntr 0 def°¿/_tDict 2 dict def°¿% typography operators°¿ /Tx {} def°¿ /Tj {} def°¿% compound path operators°¿/CRender {} def°¿ % printing°¿/_AI3_savepage {} def°¿% color operands°¿/_gf null def°¿/_cf 4 array def°¿/_if null def°¿/_of false def°¿ /_fc {} def°¿/_gs null def°¿/_cs 4 array def°¿/_is null def°¿/_os false def°¿ /_sc {} def°¿/_i null def°¿Adobe_IllustratorA_AI3 begin°¿Adobe_IllustratorA_AI3°¿    {°¿     dup xcheck°¿        {°¿        bind°¿        } if°¿        pop pop°¿
  1417.     } forall°¿end°¿end°¿Adobe_IllustratorA_AI3 begin°¿"Adobe_IllustratorA_AI3_vars begin°¿newpath°¿} def°¿/terminate                % - terminate -°¿{°¿end°¿end°¿} def°¿% definition operators°¿/_                    % - _ null°¿    null def°¿/ddef                % key value ddef -°¿{°¿)Adobe_IllustratorA_AI3_vars 3 1 roll put°¿} def°¿$/xput                % key value literal xput -°¿{°¿&dup load dup length exch maxlength eq°¿    {°¿    dup dup load dup°¿    length 2 mul dict copy def°¿    } if°¿load begin def end°¿} def°¿/npop                % integer npop -°¿{°¿    {°¿    pop°¿
  1418.     } repeat°¿} def°¿% marking operators°¿/sw                    % ax ay string sw x y °¿{°¿dup length exch stringwidth°¿%exch 5 -1 roll 3 index 1 sub mul add°¿ 4 1 roll 3 1 roll 1 sub mul add°¿} def°¿./swj                % cx cy fillchar ax ay string swj x y°¿{°¿dup 4 1 roll°¿dup length exch stringwidth °¿%exch 5 -1 roll 3 index 1 sub mul add°¿!4 1 roll 3 1 roll 1 sub mul add °¿6 2 roll /_cnt 0 ddef°¿3{1 index eq {/_cnt _cnt 1 add ddef} if} forall pop°¿Nexch _cnt mul exch _cnt mul 2 index add 4 1 roll 2 index add 4 1 roll pop pop°¿} def°¿#/ss                    % ax ay string matrix ss -°¿{°¿    4 1 roll°¿'    {                % matrix ax ay char 0 0 {proc} -°¿        2 npop °¿     (0) exch 2 copy 0 exch put pop°¿    gsave°¿    false charpath currentpoint°¿    4 index setmatrix°¿    stroke°¿
  1419.     grestore°¿    moveto°¿    2 copy rmoveto°¿    } exch cshow°¿3 npop°¿} def°¿3/jss                % cx cy fillchar ax ay string matrix jss -°¿{°¿    4 1 roll°¿9    {                % cx cy fillchar matrix ax ay char 0 0 {proc} -   °¿        2 npop °¿    (0) exch 2 copy 0 exch put °¿    gsave°¿        _sp eq °¿        {°¿5        exch 6 index 6 index 6 index 5 -1 roll widthshow  °¿        currentpoint°¿        }°¿        {°¿        false charpath currentpoint°¿        4 index setmatrix stroke°¿
  1420.         }ifelse°¿
  1421.     grestore°¿    moveto°¿    2 copy rmoveto°¿    } exch cshow°¿6 npop°¿} def°¿% path operators°¿/sp                    % ax ay string sp -°¿{°¿    {°¿    2 npop (0) exch°¿    2 copy 0 exch put pop°¿    false charpath°¿    2 copy rmoveto°¿    } exch cshow°¿2 npop°¿} def°¿-/jsp                    % cx cy fillchar ax ay string jsp -°¿{°¿0    {                    % cx cy fillchar ax ay char 0 0 {proc} -°¿        2 npop °¿    (0) exch 2 copy 0 exch put °¿        _sp eq °¿        {°¿5        exch 5 index 5 index 5 index 5 -1 roll widthshow  °¿        }°¿        {°¿        false charpath°¿
  1422.         }ifelse°¿    2 copy rmoveto°¿    } exch cshow°¿5 npop°¿} def°¿% path construction operators°¿/pl                % x y pl x y°¿{°¿
  1423. transform°¿0.25 sub round 0.25 add exch°¿0.25 sub round 0.25 add exch°¿ itransform°¿} def°¿/setstrokeadjust where°¿    {°¿    pop true setstrokeadjust°¿    /c                % x1 y1 x2 y2 x3 y3 c -°¿    {°¿        curveto°¿    } def°¿    /C°¿    /c load def°¿    /v                % x2 y2 x3 y3 v -°¿    {°¿    currentpoint 6 2 roll curveto°¿    } def°¿    /V°¿    /v load def°¿    /y                % x1 y1 x2 y2 y -°¿    {°¿    2 copy curveto°¿    } def°¿    /Y°¿    /y load def°¿    /l                % x y l -°¿    {°¿    lineto°¿    } def°¿    /L°¿    /l load def°¿    /m                % x y m -°¿    {°¿    moveto°¿    } def°¿    }°¿    {%else°¿    /c°¿    {°¿     pl curveto°¿    } def°¿    /C°¿    /c load def°¿    /v°¿    {°¿"    currentpoint 6 2 roll pl curveto°¿    } def°¿    /V°¿    /v load def°¿    /y°¿    {°¿    pl 2 copy curveto°¿    } def°¿    /Y°¿    /y load def°¿    /l°¿    {°¿     pl lineto°¿    } def°¿    /L°¿    /l load def°¿    /m°¿    {°¿     pl moveto°¿    } def°¿        }ifelse°¿% graphic state operators°¿/d                    % array phase d -°¿{°¿setdash°¿} def°¿/cf    {} def            % - cf flatness°¿/i                    % flatness i -°¿{°¿    dup 0 eq°¿    {°¿    pop cf°¿    } if°¿setflat°¿} def°¿/j                    % linejoin j -°¿{°¿ setlinejoin°¿} def°¿/J                    % linecap J -°¿{°¿ setlinecap°¿} def°¿/M                    % miterlimit M -°¿{°¿setmiterlimit°¿} def°¿/w                    % linewidth w -°¿{°¿setlinewidth°¿} def°¿% path painting operators°¿/H                    % - H -°¿{} def°¿/h                    % - h -°¿{°¿
  1424. closepath°¿} def°¿/N                    % - N -°¿{°¿ _pola 0 eq °¿    {°¿)    _doClip 1 eq {clip /_doClip 0 ddef} if °¿        newpath°¿    } °¿    {°¿    /CRender {N} ddef°¿        }ifelse°¿} def°¿/n                    % - n -°¿{N} def°¿/F                    % - F -°¿{°¿ _pola 0 eq °¿    {°¿    _doClip 1 eq °¿        {°¿7        gsave _pf grestore clip newpath /_lp /none ddef _fc °¿        /_doClip 0 ddef°¿        }°¿        {°¿        _pf°¿
  1425.         }ifelse°¿    } °¿    {°¿    /CRender {F} ddef°¿        }ifelse°¿} def°¿/f                    % - f -°¿{°¿
  1426. closepath°¿F°¿} def°¿/S                    % - S -°¿{°¿ _pola 0 eq °¿    {°¿    _doClip 1 eq °¿        {°¿7        gsave _ps grestore clip newpath /_lp /none ddef _sc °¿        /_doClip 0 ddef°¿        }°¿        {°¿        _ps°¿
  1427.         }ifelse°¿    } °¿    {°¿    /CRender {S} ddef°¿        }ifelse°¿} def°¿/s                    % - s -°¿{°¿
  1428. closepath°¿S°¿} def°¿/B                    % - B -°¿{°¿ _pola 0 eq °¿    {°¿"    _doClip 1 eq     % F clears _doClip°¿    gsave F grestore °¿        {°¿4        gsave S grestore clip newpath /_lp /none ddef _sc°¿        /_doClip 0 ddef°¿        } °¿        {°¿        S°¿
  1429.         }ifelse°¿    }°¿    {°¿    /CRender {B} ddef°¿        }ifelse°¿} def°¿/b                    % - b -°¿{°¿
  1430. closepath°¿B°¿} def°¿/W                    % - W -°¿{°¿/_doClip 1 ddef°¿} def°¿/*                    % - [string] * -°¿{°¿ count 0 ne °¿    {°¿#    dup type (stringtype) eq {pop} if°¿    } if °¿_pola 0 eq {newpath} if°¿} def°¿% group operators°¿/u                    % - u -°¿{} def°¿/U                    % - U -°¿{} def°¿/q                    % - q -°¿{°¿_pola 0 eq {gsave} if°¿} def°¿/Q                    % - Q -°¿{°¿_pola 0 eq {grestore} if°¿} def°¿/*u                    % - *u -°¿{°¿_pola 1 add /_pola exch ddef°¿} def°¿/*U                    % - *U -°¿{°¿_pola 1 sub /_pola exch ddef °¿_pola 0 eq {CRender} if°¿} def°¿/D                    % polarized D -°¿
  1431. {pop} def°¿/*w                    % - *w -°¿{} def°¿/*W                    % - *W -°¿{} def°¿% place operators°¿+/`                    % matrix llx lly urx ury string ` -°¿{°¿/_i save ddef°¿6 1 roll 4 npop°¿ concat pop°¿userdict begin°¿/showpage {} def°¿
  1432. 0 setgray°¿0 setlinecap°¿1 setlinewidth°¿0 setlinejoin°¿10 setmiterlimit°¿[] 0 setdash°¿newpath°¿
  1433. 0 setgray°¿false setoverprint°¿} def°¿/~                    % - ~ -°¿{°¿end°¿ _i restore°¿} def°¿% color operators°¿/O                    % flag O -°¿{°¿0 ne°¿/_of exch ddef°¿/_lp /none ddef°¿} def°¿/R                    % flag R -°¿{°¿0 ne°¿/_os exch ddef°¿/_lp /none ddef°¿} def°¿/g                    % gray g -°¿{°¿/_gf exch ddef°¿/_fc°¿{ °¿_lp /fill ne°¿    {°¿    _of setoverprint°¿    _gf setgray°¿    /_lp /fill ddef°¿    } if°¿} ddef°¿/_pf°¿{°¿_fc°¿fill°¿} ddef°¿/_psf°¿{°¿_fc°¿ashow°¿} ddef°¿/_pjsf°¿{°¿_fc°¿ awidthshow°¿} ddef°¿/_lp /none ddef°¿} def°¿/G                    % gray G -°¿{°¿/_gs exch ddef°¿/_sc°¿{°¿_lp /stroke ne°¿    {°¿    _os setoverprint°¿    _gs setgray°¿    /_lp /stroke ddef°¿    } if°¿} ddef°¿/_ps°¿{°¿_sc°¿stroke°¿} ddef°¿/_pss°¿{°¿_sc°¿ss°¿} ddef°¿/_pjss°¿{°¿_sc°¿jss°¿} ddef°¿/_lp /none ddef°¿} def°¿'/k                    % cyan magenta yellow black k -°¿{°¿_cf astore pop°¿/_fc°¿{°¿_lp /fill ne°¿    {°¿    _of setoverprint°¿    _cf aload pop setcmykcolor°¿    /_lp /fill ddef°¿    } if°¿} ddef°¿/_pf°¿{°¿_fc°¿fill°¿} ddef°¿/_psf°¿{°¿_fc°¿ashow°¿} ddef°¿/_pjsf°¿{°¿_fc°¿ awidthshow°¿} ddef°¿/_lp /none ddef°¿} def°¿'/K                    % cyan magenta yellow black K -°¿{°¿_cs astore pop°¿/_sc°¿{°¿_lp /stroke ne°¿    {°¿    _os setoverprint°¿    _cs aload pop setcmykcolor°¿    /_lp /stroke ddef°¿    } if°¿} ddef°¿/_ps°¿{°¿_sc°¿stroke°¿} ddef°¿/_pss°¿{°¿_sc°¿ss°¿} ddef°¿/_pjss°¿{°¿_sc°¿jss°¿} ddef°¿/_lp /none ddef°¿} def°¿1/x                    % cyan magenta yellow black name gray x -°¿{°¿/_gf exch ddef°¿findcmykcustomcolor°¿/_if exch ddef°¿/_fc°¿{ °¿_lp /fill ne°¿    {°¿    _of setoverprint°¿#    _if _gf 1 exch sub setcustomcolor°¿    /_lp /fill ddef°¿    } if°¿} ddef°¿/_pf°¿{°¿_fc°¿fill°¿} ddef°¿/_psf°¿{°¿_fc°¿ashow°¿} ddef°¿/_pjsf°¿{°¿_fc°¿ awidthshow°¿} ddef°¿/_lp /none ddef°¿} def°¿1/X                    % cyan magenta yellow black name gray X -°¿{°¿/_gs exch ddef°¿findcmykcustomcolor°¿/_is exch ddef°¿/_sc°¿{°¿_lp /stroke ne°¿    {°¿    _os setoverprint°¿#    _is _gs 1 exch sub setcustomcolor°¿    /_lp /stroke ddef°¿    } if°¿} ddef°¿/_ps°¿{°¿_sc°¿stroke°¿} ddef°¿/_pss°¿{°¿_sc°¿ss°¿} ddef°¿/_pjss°¿{°¿_sc°¿jss°¿} ddef°¿/_lp /none ddef°¿} def°¿% locked object operator°¿/A                    % value A -°¿{°¿pop°¿} def°¿currentdict readonly pop end°¿ setpacking°¿% annotate page operator°¿/annotatepage°¿{°¿} def°¿%%EndResource°¿%/showpage{}def°¿/copypage{}def°¿[105 511 525 278]°¿[newpath clippath pathbbox]°¿2 dict begin°¿ /d exch def°¿ /s exch def°¿d 0 get d 1 get translate°¿,d 2 get d 0 get sub s 2 get s 0 get sub div°¿,d 3 get d 1 get sub s 3 get s 1 get sub div°¿scale°¿"s 0 get neg s 1 get neg translate°¿end°¿ %%EndProlog°¿%%BeginSetup°¿%Adobe_cmykcolor /initialize get exec°¿!Adobe_cshow /initialize get exec°¿'Adobe_customcolor /initialize get exec°¿*Adobe_typography_AI3 /initialize get exec°¿,Adobe_IllustratorA_AI3 /initialize get exec°¿[°¿M39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis°¿L/Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute°¿I/egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde°¿F/oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex°¿K/udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls°¿A/registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash°¿:/.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef°¿D/.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash°¿C/questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef°¿J/guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe°¿F/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide°¿L/.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright°¿H/fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand°¿D/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex°¿G/Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex°¿F/Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla°¿/hungarumlaut/ogonek/caron°¿TE°¿*%AI3_BeginEncoding: _Helvetica Helvetica[°¿9/_Helvetica/Helvetica 0 0 1 TZ%AI3_EndEncoding TrueType°¿ %%EndSetup°¿0 A°¿0 To°¿1 0 0 1 204.5 280.0219 0 Tp°¿TP°¿-30.4512 0 Td°¿0 Tr°¿0 O°¿0 g°¿0 i°¿ °¿0 J°¿ °¿0 j°¿ °¿1 w°¿ °¿4 M°¿ [°¿]0 d°¿°¿ %AI3_Note:°¿0 D°¿/_Helvetica 8 Tf°¿0 Ts°¿100 Tz°¿0 Tt°¿0 TA°¿    0 0 5 TC°¿100 100 200 TW°¿    0 0 0 Ti°¿1 Ta°¿0 Tq°¿9 0 Tl°¿0 Tc°¿0 Tw°¿(Synchronous call)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿&1 0 0.38 0.305 (PANTONE 322 CV) 0.9 x°¿1 R°¿ 0 0.1 0 1 K°¿0.75 w°¿°¿299 304.6719 m°¿299 338.6719 L°¿108 338.6719 L°¿108 304.6719 L°¿299 304.6719 L°¿b°¿U°¿0 To°¿1 0 0 1 204 318.6719 0 Tp°¿TP°¿-31.3369 0 Td°¿0 Tr°¿1 O°¿0 g°¿1 w°¿°¿(Operating system)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿0 O°¿&1 0 0.38 0.305 (PANTONE 322 CV) 0.9 x°¿1 R°¿ 0 0.1 0 1 K°¿0.75 w°¿°¿522 304.6719 m°¿522 338.6719 L°¿331 338.6719 L°¿331 304.6719 L°¿522 304.6719 L°¿b°¿U°¿0 To°¿1 0 0 1 426 318.6719 0 Tp°¿TP°¿-31.3369 0 Td°¿0 Tr°¿1 O°¿0 g°¿1 w°¿°¿(Operating system)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿0 -1 1 0 488.975 382.1719 0 Tp°¿TP°¿-18.0059 0 Td°¿0 Tr°¿0 O°¿
  1434. (Response)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿1 0 0 1 426.5 280.0219 0 Tp°¿TP°¿-32.4512 0 Td°¿0 Tr°¿(Asynchronous call)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿&1 0 0.38 0.305 (PANTONE 322 CV) 0.9 x°¿1 R°¿ 0 0.1 0 1 K°¿0.75 w°¿°¿522 415.6719 m°¿522 478.6719 L°¿331 478.6719 L°¿331 415.6719 L°¿522 415.6719 L°¿b°¿426.5 447.1719 m°¿B°¿U°¿0 To°¿1 0 0 1 426.4766 461.6605 0 Tp°¿TP°¿-29.3428 0 Td°¿0 Tr°¿1 O°¿0 g°¿1 w°¿°¿(Application code)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿358.1871 467.1497 m°¿359.1867 467.1497 L°¿359.1867 466.1501 L°¿360.1864 466.1501 L°¿360.1864 465.1504 L°¿361.1861 465.1504 L°¿361.1861 464.1508 L°¿362.1857 464.1508 L°¿362.1857 463.1511 L°¿363.1854 463.1511 L°¿363.1854 462.1515 L°¿364.185 462.1515 L°¿364.185 461.1518 L°¿365.1847 461.1518 L°¿365.1847 460.1522 L°¿366.1843 460.1522 L°¿366.1843 459.1525 L°¿367.184 459.1525 L°¿367.184 458.1529 L°¿368.1836 458.1529 L°¿368.1836 457.1532 L°¿369.1833 457.1532 L°¿369.1833 456.1536 L°¿370.1829 456.1536 L°¿370.1829 455.1539 L°¿371.1826 455.1539 L°¿371.1826 454.1543 L°¿372.1822 454.1543 L°¿372.1822 453.1546 L°¿373.1819 453.1546 L°¿373.1819 452.155 L°¿374.1815 452.155 L°¿374.1815 451.1553 L°¿373.1819 451.1553 L°¿373.1819 450.1556 L°¿372.1822 450.1556 L°¿372.1822 449.156 L°¿374.1815 449.156 L°¿374.1815 441.1588 L°¿371.2659 441.1588 L°¿371.2659 442.1584 L°¿369.2666 442.1584 L°¿369.2666 443.0956 L°¿365.1847 443.0956 L°¿365.1847 442.1584 L°¿364.185 442.1584 L°¿364.185 441.1588 L°¿363.1854 441.1588 L°¿363.1854 440.1591 L°¿362.1857 440.1591 L°¿362.1857 439.1595 L°¿361.1861 439.1595 L°¿361.1861 438.1598 L°¿360.1864 438.1598 L°¿360.1864 437.1602 L°¿359.1867 437.1602 L°¿359.1867 436.1605 L°¿358.1871 436.1605 L°¿358.1871 437.1602 L°¿357.1875 437.1602 L°¿357.1875 438.1598 L°¿356.1878 438.1598 L°¿356.1878 439.1595 L°¿355.1882 439.1595 L°¿355.1882 440.1591 L°¿354.1885 440.1591 L°¿354.1885 441.1588 L°¿353.1888 441.1588 L°¿353.1888 442.1584 L°¿352.1892 442.1584 L°¿352.1892 443.1581 L°¿351.1895 443.1581 L°¿351.1895 444.1577 L°¿350.1899 444.1577 L°¿350.1899 445.1574 L°¿349.1902 445.1574 L°¿349.1902 446.157 L°¿348.1906 446.157 L°¿348.1906 447.1567 L°¿347.1909 447.1567 L°¿347.1909 448.1563 L°¿346.1913 448.1563 L°¿346.1913 449.156 L°¿345.1916 449.156 L°¿345.1916 450.1556 L°¿344.192 450.1556 L°¿344.192 451.1553 L°¿343.1923 451.1553 L°¿343.1923 452.155 L°¿342.1927 452.155 L°¿342.1927 453.1546 L°¿343.1923 453.1546 L°¿343.1923 454.1543 L°¿344.192 454.1543 L°¿344.192 455.1539 L°¿345.1916 455.1539 L°¿345.1916 456.1536 L°¿346.1913 456.1536 L°¿346.1913 457.1532 L°¿347.1909 457.1532 L°¿347.1909 458.1529 L°¿348.1906 458.1529 L°¿348.1906 459.1525 L°¿349.1902 459.1525 L°¿349.1902 460.1522 L°¿350.1899 460.1522 L°¿350.1899 461.1518 L°¿351.1895 461.1518 L°¿351.1895 462.1515 L°¿352.1892 462.1515 L°¿352.1892 463.1511 L°¿353.1888 463.1511 L°¿353.1888 464.1508 L°¿354.1885 464.1508 L°¿354.1885 465.1504 L°¿355.1882 465.1504 L°¿355.1882 466.1501 L°¿356.1878 466.1501 L°¿356.1878 467.1497 L°¿357.1875 467.1497 L°¿357.1875 468.1494 L°¿358.1871 468.1494 L°¿358.1871 467.1497 L°¿f°¿0 O°¿1 g°¿2 J°¿ °¿2 M°¿°¿358.1871 466.1501 m°¿359.1867 466.1501 L°¿359.1867 465.1504 L°¿360.1864 465.1504 L°¿360.1864 464.1508 L°¿361.1861 464.1508 L°¿361.1861 463.1511 L°¿362.1857 463.1511 L°¿362.1857 462.1515 L°¿363.1854 462.1515 L°¿363.1854 461.1518 L°¿364.185 461.1518 L°¿364.185 460.1522 L°¿365.1847 460.1522 L°¿365.1847 459.1525 L°¿366.1843 459.1525 L°¿366.1843 458.1529 L°¿367.184 458.1529 L°¿367.184 457.1532 L°¿368.1836 457.1532 L°¿368.1836 456.1536 L°¿369.1833 456.1536 L°¿369.1833 455.1539 L°¿370.1829 455.1539 L°¿370.1829 454.1543 L°¿371.1826 454.1543 L°¿371.1826 453.1546 L°¿372.1822 453.1546 L°¿372.1822 452.155 L°¿373.1819 452.155 L°¿373.1819 451.1553 L°¿372.1822 451.1553 L°¿372.1822 450.1556 L°¿371.1826 450.1556 L°¿371.1826 449.156 L°¿370.1829 449.156 L°¿370.1829 448.1563 L°¿371.1826 448.1563 L°¿371.1826 443.0956 L°¿369.2666 443.0956 L°¿369.2666 444.1577 L°¿361.1861 444.1577 L°¿361.1861 443.0748 L°¿364.185 443.0748 L°¿364.185 442.1584 L°¿363.1854 442.1584 L°¿363.1854 441.1588 L°¿362.1857 441.1588 L°¿362.1857 440.1591 L°¿361.1861 440.1591 L°¿361.1861 439.1595 L°¿360.1864 439.1595 L°¿360.1864 438.1598 L°¿359.1867 438.1598 L°¿359.1867 437.1602 L°¿358.1871 437.1602 L°¿358.1871 438.1598 L°¿357.1875 438.1598 L°¿357.1875 439.1595 L°¿356.1878 439.1595 L°¿356.1878 440.1591 L°¿355.1882 440.1591 L°¿355.1882 441.1588 L°¿354.1885 441.1588 L°¿354.1885 442.1584 L°¿353.1888 442.1584 L°¿353.1888 443.1581 L°¿352.1892 443.1581 L°¿352.1892 444.1577 L°¿351.1895 444.1577 L°¿351.1895 445.1574 L°¿350.1899 445.1574 L°¿350.1899 446.157 L°¿349.1902 446.157 L°¿349.1902 447.1567 L°¿348.1906 447.1567 L°¿348.1906 448.1563 L°¿347.1909 448.1563 L°¿347.1909 449.156 L°¿346.1913 449.156 L°¿346.1913 450.1556 L°¿345.1916 450.1556 L°¿345.1916 451.1553 L°¿344.192 451.1553 L°¿344.192 452.155 L°¿343.1923 452.155 L°¿343.1923 453.1546 L°¿344.192 453.1546 L°¿344.192 453.9043 l°¿344.192 454.1543 L°¿345.1916 454.1543 L°¿345.1916 454.904 l°¿345.1916 455.1539 L°¿346.1913 455.1539 L°¿346.1913 455.9036 l°¿346.1913 456.1536 L°¿347.1909 456.1536 L°¿347.1909 457.1532 L°¿348.1906 457.1532 L°¿348.1906 458.1529 L°¿349.1902 458.1529 L°¿349.1902 459.1525 L°¿350.1899 459.1525 L°¿350.1899 460.1522 L°¿351.1895 460.1522 L°¿351.1895 461.1518 L°¿352.1892 461.1518 L°¿352.1892 462.1515 L°¿353.1888 462.1515 L°¿353.1888 463.1511 L°¿354.1885 463.1511 L°¿354.1885 464.1508 L°¿355.1882 464.1508 L°¿355.1882 465.1504 L°¿356.1878 465.1504 L°¿356.1878 466.1501 L°¿357.1875 466.1501 L°¿357.1875 467.1497 L°¿358.1871 467.1497 L°¿358.1871 466.1501 L°¿f°¿0 g°¿366.1843 453.1546 m°¿367.184 453.1546 L°¿367.184 452.155 L°¿368.1836 452.155 L°¿368.1836 451.1553 L°¿369.1833 451.1553 L°¿369.1833 450.1556 L°¿370.1829 450.1556 L°¿370.1829 449.156 L°¿369.2041 449.156 L°¿369.2041 450.1556 L°¿368.2045 450.1556 L°¿368.2045 451.1553 L°¿367.2048 451.1553 L°¿367.2048 452.155 L°¿366.1843 452.155 L°¿366.1843 453.1546 L°¿360.6029 453.1546 l°¿360.1864 453.1494 L°¿360.1864 452.4049 l°¿360.1864 452.155 L°¿359.1867 452.1497 L°¿359.1867 451.4052 l°¿359.1867 451.1553 L°¿358.1871 451.1501 L°¿358.1871 450.4889 l°¿358.1871 450.0723 L°¿360.2697 450.0723 L°¿360.2697 450.8221 l°¿360.2697 451.072 L°¿362.1857 451.072 L°¿362.1857 450.0723 L°¿362.9355 450.0723 l°¿363.1854 450.0723 L°¿363.1854 449.0935 L°¿367.184 449.0727 L°¿367.184 448.1147 L°¿362.269 448.1147 L°¿362.269 447.4066 l°¿362.269 447.1567 L°¿360.2697 447.1567 L°¿360.2593 448.1225 L°¿359.52 448.1147 l°¿359.2701 448.1147 L°¿359.2701 449.156 L°¿357.2707 449.156 L°¿357.2707 447.0734 L°¿357.9997 447.0734 l°¿358.2704 447.0734 L°¿358.2704 446.0737 L°¿358.9368 446.0737 l°¿359.2701 446.0737 L°¿359.2701 445.1574 L°¿361.1861 445.1574 L°¿361.1861 444.1577 L°¿359.2701 444.1577 L°¿359.2701 445.1574 L°¿358.5203 445.1574 l°¿358.2704 445.1574 L°¿358.2704 446.0737 L°¿357.5207 446.0737 l°¿357.2707 446.0737 L°¿357.2707 447.0734 L°¿356.521 447.0734 l°¿356.2711 447.0734 L°¿356.2711 448.073 L°¿354.2718 448.073 L°¿354.2718 449.1508 L°¿357.2499 449.1508 L°¿357.2499 451.1449 L°¿358.1871 451.1501 L°¿358.1871 451.8165 l°¿358.1871 452.1497 L°¿359.1867 452.1497 L°¿359.1867 452.8162 l°¿359.1867 453.1442 L°¿360.1864 453.1494 L°¿360.1864 454.0657 L°¿366.1843 454.071 L°¿366.1843 453.1546 L°¿f°¿1 g°¿362.1857 449.0935 m°¿360.2697 449.0935 L°¿360.2697 450.0723 L°¿362.1857 450.0723 L°¿362.1857 449.0935 L°¿f°¿U°¿u°¿&1 0 0.38 0.305 (PANTONE 322 CV) 0.9 x°¿1 R°¿ 0 0.1 0 1 K°¿0 J°¿ °¿0.75 w°¿ °¿4 M°¿°¿299 415.6719 m°¿299 478.6719 L°¿108 478.6719 L°¿108 415.6719 L°¿299 415.6719 L°¿b°¿203.5 447.1719 m°¿B°¿U°¿0 To°¿1 0 0 1 202.9766 461.6605 0 Tp°¿TP°¿-29.3428 0 Td°¿0 Tr°¿1 O°¿0 g°¿1 w°¿°¿(Application code)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿135.1871 467.1497 m°¿136.1867 467.1497 L°¿136.1867 466.1501 L°¿137.1864 466.1501 L°¿137.1864 465.1504 L°¿138.1861 465.1504 L°¿138.1861 464.1508 L°¿139.1857 464.1508 L°¿139.1857 463.1511 L°¿140.1854 463.1511 L°¿140.1854 462.1515 L°¿141.185 462.1515 L°¿141.185 461.1518 L°¿142.1847 461.1518 L°¿142.1847 460.1522 L°¿143.1843 460.1522 L°¿143.1843 459.1525 L°¿144.184 459.1525 L°¿144.184 458.1529 L°¿145.1836 458.1529 L°¿145.1836 457.1532 L°¿146.1833 457.1532 L°¿146.1833 456.1536 L°¿147.1829 456.1536 L°¿147.1829 455.1539 L°¿148.1826 455.1539 L°¿148.1826 454.1543 L°¿149.1822 454.1543 L°¿149.1822 453.1546 L°¿150.1819 453.1546 L°¿150.1819 452.155 L°¿151.1815 452.155 L°¿151.1815 451.1553 L°¿150.1819 451.1553 L°¿150.1819 450.1556 L°¿149.1822 450.1556 L°¿149.1822 449.156 L°¿151.1815 449.156 L°¿151.1815 441.1588 L°¿148.2659 441.1588 L°¿148.2659 442.1584 L°¿146.2666 442.1584 L°¿146.2666 443.0956 L°¿142.1847 443.0956 L°¿142.1847 442.1584 L°¿141.185 442.1584 L°¿141.185 441.1588 L°¿140.1854 441.1588 L°¿140.1854 440.1591 L°¿139.1857 440.1591 L°¿139.1857 439.1595 L°¿138.1861 439.1595 L°¿138.1861 438.1598 L°¿137.1864 438.1598 L°¿137.1864 437.1602 L°¿136.1867 437.1602 L°¿136.1867 436.1605 L°¿135.1871 436.1605 L°¿135.1871 437.1602 L°¿134.1875 437.1602 L°¿134.1875 438.1598 L°¿133.1878 438.1598 L°¿133.1878 439.1595 L°¿132.1882 439.1595 L°¿132.1882 440.1591 L°¿131.1885 440.1591 L°¿131.1885 441.1588 L°¿130.1888 441.1588 L°¿130.1888 442.1584 L°¿129.1892 442.1584 L°¿129.1892 443.1581 L°¿128.1895 443.1581 L°¿128.1895 444.1577 L°¿127.1899 444.1577 L°¿127.1899 445.1574 L°¿126.1902 445.1574 L°¿126.1902 446.157 L°¿125.1906 446.157 L°¿125.1906 447.1567 L°¿124.1909 447.1567 L°¿124.1909 448.1563 L°¿123.1913 448.1563 L°¿123.1913 449.156 L°¿122.1916 449.156 L°¿122.1916 450.1556 L°¿121.192 450.1556 L°¿121.192 451.1553 L°¿120.1923 451.1553 L°¿120.1923 452.155 L°¿119.1927 452.155 L°¿119.1927 453.1546 L°¿120.1923 453.1546 L°¿120.1923 454.1543 L°¿121.192 454.1543 L°¿121.192 455.1539 L°¿122.1916 455.1539 L°¿122.1916 456.1536 L°¿123.1913 456.1536 L°¿123.1913 457.1532 L°¿124.1909 457.1532 L°¿124.1909 458.1529 L°¿125.1906 458.1529 L°¿125.1906 459.1525 L°¿126.1902 459.1525 L°¿126.1902 460.1522 L°¿127.1899 460.1522 L°¿127.1899 461.1518 L°¿128.1895 461.1518 L°¿128.1895 462.1515 L°¿129.1892 462.1515 L°¿129.1892 463.1511 L°¿130.1888 463.1511 L°¿130.1888 464.1508 L°¿131.1885 464.1508 L°¿131.1885 465.1504 L°¿132.1882 465.1504 L°¿132.1882 466.1501 L°¿133.1878 466.1501 L°¿133.1878 467.1497 L°¿134.1875 467.1497 L°¿134.1875 468.1494 L°¿135.1871 468.1494 L°¿135.1871 467.1497 L°¿f°¿0 O°¿1 g°¿2 J°¿ °¿2 M°¿°¿135.1871 466.1501 m°¿136.1867 466.1501 L°¿136.1867 465.1504 L°¿137.1864 465.1504 L°¿137.1864 464.1508 L°¿138.1861 464.1508 L°¿138.1861 463.1511 L°¿139.1857 463.1511 L°¿139.1857 462.1515 L°¿140.1854 462.1515 L°¿140.1854 461.1518 L°¿141.185 461.1518 L°¿141.185 460.1522 L°¿142.1847 460.1522 L°¿142.1847 459.1525 L°¿143.1843 459.1525 L°¿143.1843 458.1529 L°¿144.184 458.1529 L°¿144.184 457.1532 L°¿145.1836 457.1532 L°¿145.1836 456.1536 L°¿146.1833 456.1536 L°¿146.1833 455.1539 L°¿147.1829 455.1539 L°¿147.1829 454.1543 L°¿148.1826 454.1543 L°¿148.1826 453.1546 L°¿149.1822 453.1546 L°¿149.1822 452.155 L°¿150.1819 452.155 L°¿150.1819 451.1553 L°¿149.1822 451.1553 L°¿149.1822 450.1556 L°¿148.1826 450.1556 L°¿148.1826 449.156 L°¿147.1829 449.156 L°¿147.1829 448.1563 L°¿148.1826 448.1563 L°¿148.1826 443.0956 L°¿146.2666 443.0956 L°¿146.2666 444.1577 L°¿138.1861 444.1577 L°¿138.1861 443.0748 L°¿141.185 443.0748 L°¿141.185 442.1584 L°¿140.1854 442.1584 L°¿140.1854 441.1588 L°¿139.1857 441.1588 L°¿139.1857 440.1591 L°¿138.1861 440.1591 L°¿138.1861 439.1595 L°¿137.1864 439.1595 L°¿137.1864 438.1598 L°¿136.1867 438.1598 L°¿136.1867 437.1602 L°¿135.1871 437.1602 L°¿135.1871 438.1598 L°¿134.1875 438.1598 L°¿134.1875 439.1595 L°¿133.1878 439.1595 L°¿133.1878 440.1591 L°¿132.1882 440.1591 L°¿132.1882 441.1588 L°¿131.1885 441.1588 L°¿131.1885 442.1584 L°¿130.1888 442.1584 L°¿130.1888 443.1581 L°¿129.1892 443.1581 L°¿129.1892 444.1577 L°¿128.1895 444.1577 L°¿128.1895 445.1574 L°¿127.1899 445.1574 L°¿127.1899 446.157 L°¿126.1902 446.157 L°¿126.1902 447.1567 L°¿125.1906 447.1567 L°¿125.1906 448.1563 L°¿124.1909 448.1563 L°¿124.1909 449.156 L°¿123.1913 449.156 L°¿123.1913 450.1556 L°¿122.1916 450.1556 L°¿122.1916 451.1553 L°¿121.192 451.1553 L°¿121.192 452.155 L°¿120.1923 452.155 L°¿120.1923 453.1546 L°¿121.192 453.1546 L°¿121.192 453.9043 l°¿121.192 454.1543 L°¿122.1916 454.1543 L°¿122.1916 454.904 l°¿122.1916 455.1539 L°¿123.1913 455.1539 L°¿123.1913 455.9036 l°¿123.1913 456.1536 L°¿124.1909 456.1536 L°¿124.1909 457.1532 L°¿125.1906 457.1532 L°¿125.1906 458.1529 L°¿126.1902 458.1529 L°¿126.1902 459.1525 L°¿127.1899 459.1525 L°¿127.1899 460.1522 L°¿128.1895 460.1522 L°¿128.1895 461.1518 L°¿129.1892 461.1518 L°¿129.1892 462.1515 L°¿130.1888 462.1515 L°¿130.1888 463.1511 L°¿131.1885 463.1511 L°¿131.1885 464.1508 L°¿132.1882 464.1508 L°¿132.1882 465.1504 L°¿133.1878 465.1504 L°¿133.1878 466.1501 L°¿134.1875 466.1501 L°¿134.1875 467.1497 L°¿135.1871 467.1497 L°¿135.1871 466.1501 L°¿f°¿0 g°¿143.1843 453.1546 m°¿144.184 453.1546 L°¿144.184 452.155 L°¿145.1836 452.155 L°¿145.1836 451.1553 L°¿146.1833 451.1553 L°¿146.1833 450.1556 L°¿147.1829 450.1556 L°¿147.1829 449.156 L°¿146.2041 449.156 L°¿146.2041 450.1556 L°¿145.2045 450.1556 L°¿145.2045 451.1553 L°¿144.2048 451.1553 L°¿144.2048 452.155 L°¿143.1843 452.155 L°¿143.1843 453.1546 L°¿137.6029 453.1546 l°¿137.1864 453.1494 L°¿137.1864 452.4049 l°¿137.1864 452.155 L°¿136.1867 452.1497 L°¿136.1867 451.4052 l°¿136.1867 451.1553 L°¿135.1871 451.1501 L°¿135.1871 450.4889 l°¿135.1871 450.0723 L°¿137.2697 450.0723 L°¿137.2697 450.8221 l°¿137.2697 451.072 L°¿139.1857 451.072 L°¿139.1857 450.0723 L°¿139.9355 450.0723 l°¿140.1854 450.0723 L°¿140.1854 449.0935 L°¿144.184 449.0727 L°¿144.184 448.1147 L°¿139.269 448.1147 L°¿139.269 447.4066 l°¿139.269 447.1567 L°¿137.2697 447.1567 L°¿137.2593 448.1225 L°¿136.52 448.1147 l°¿136.2701 448.1147 L°¿136.2701 449.156 L°¿134.2707 449.156 L°¿134.2707 447.0734 L°¿134.9997 447.0734 l°¿135.2704 447.0734 L°¿135.2704 446.0737 L°¿135.9368 446.0737 l°¿136.2701 446.0737 L°¿136.2701 445.1574 L°¿138.1861 445.1574 L°¿138.1861 444.1577 L°¿136.2701 444.1577 L°¿136.2701 445.1574 L°¿135.5203 445.1574 l°¿135.2704 445.1574 L°¿135.2704 446.0737 L°¿134.5207 446.0737 l°¿134.2707 446.0737 L°¿134.2707 447.0734 L°¿133.521 447.0734 l°¿133.2711 447.0734 L°¿133.2711 448.073 L°¿131.2718 448.073 L°¿131.2718 449.1508 L°¿134.2499 449.1508 L°¿134.2499 451.1449 L°¿135.1871 451.1501 L°¿135.1871 451.8165 l°¿135.1871 452.1497 L°¿136.1867 452.1497 L°¿136.1867 452.8162 l°¿136.1867 453.1442 L°¿137.1864 453.1494 L°¿137.1864 454.0657 L°¿143.1843 454.071 L°¿143.1843 453.1546 L°¿f°¿1 g°¿139.1857 449.0935 m°¿137.2697 449.0935 L°¿137.2697 450.0723 L°¿139.1857 450.0723 L°¿139.1857 449.0935 L°¿f°¿U°¿1 R°¿0 G°¿0 J°¿ °¿0.5 w°¿ °¿4 M°¿°¿152.1562 497.2344 m°¿279.0937 497.2344 l°¿S°¿u°¿0 O°¿0 g°¿1 w°¿°¿276.7812 494.9844 m°¿283.5312 497.2344 L°¿276.7812 499.4844 l°¿8277.6562 498.2344 277.6562 495.9844 276.7812 494.9844 c°¿f°¿U°¿1 R°¿0 G°¿0.5 w°¿°¿152.1562 502.6719 m°¿152.1562 491.6719 l°¿S°¿0 To°¿1 0 0 1 204.75 502.9219 0 Tp°¿TP°¿-8.8857 0 Td°¿0 Tr°¿0 O°¿0 g°¿1 w°¿°¿(Time)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿1 R°¿0 G°¿0.5 w°¿°¿375.1562 497.2344 m°¿502.0937 497.2344 l°¿S°¿u°¿0 O°¿0 g°¿1 w°¿°¿499.7812 494.9844 m°¿506.5312 497.2344 L°¿499.7812 499.4844 l°¿8500.6562 498.2344 500.6562 495.9844 499.7812 494.9844 c°¿f°¿U°¿1 R°¿0 G°¿0.5 w°¿°¿375.1562 502.6719 m°¿375.1562 491.6719 l°¿S°¿0 To°¿1 0 0 1 427 502.9219 0 Tp°¿TP°¿-8.8857 0 Td°¿0 Tr°¿0 O°¿0 g°¿1 w°¿°¿(Time)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿190.981 345.6628 m°¿188.7071 338.9208 L°¿186.481 345.6788 l°¿7187.7279 344.7993 189.9779 344.7914 190.981 345.6628 c°¿f°¿U°¿u°¿0 To°¿0 -1 1 0 266.725 376.6719 0 Tp°¿TP°¿-32.0059 0 Td°¿0 Tr°¿(Response/Control)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿1 O°¿282.2179 453.8241 m°¿288.9534 451.5315 L°¿282.1894 449.3243 l°¿8283.0723 450.5687 283.0865 452.8186 282.2179 453.8241 c°¿f°¿U°¿1 R°¿0 G°¿0.5 w°¿°¿284.2321 451.5973 m°¿271.539 451.679 l°¿&261.9143 451.4811 263.2731 443.9169 y°¿263.2731 338.9829 l°¿S°¿U°¿u°¿1 O°¿0 g°¿1 w°¿°¿507.0378 453.9736 m°¿513.7821 451.7065 L°¿507.0264 449.4736 l°¿8507.9046 450.7214 507.9103 452.9714 507.0378 453.9736 c°¿f°¿U°¿u°¿0 O°¿413.3538 345.7069 m°¿411.0799 338.9648 L°¿408.8538 345.7228 l°¿8410.1007 344.8434 412.3507 344.8354 413.3538 345.7069 c°¿f°¿U°¿u°¿0 To°¿*-0.0002 -1 1 -0.0002 401.625 378.828 0 Tp°¿TP°¿-28.8936 0 Td°¿0 Tr°¿(Request/Control)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿1 R°¿0 G°¿0.5 w°¿°¿374.2712 451.8964 m°¿401.59 451.8964 l°¿$411.09 451.8861 411.0806 443.0911 y°¿410.975 344.4028 l°¿S°¿U°¿U°¿0 To°¿0 -1 1 0 467.4482 382.125 0 Tp°¿TP°¿-14.8906 0 Td°¿0 Tr°¿0 O°¿0 g°¿1 w°¿°¿ (Interrupt)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿ -1 1 0 423.1982 382 0 Tp°¿TP°¿-12.8887 0 Td°¿0 Tr°¿    (Control)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿+-0.0002 -1 1 -0.0002 179.4444 380.156 0 Tp°¿TP°¿-28.8936 0 Td°¿0 Tr°¿(Request/Control)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿1 R°¿0 G°¿0.5 w°¿°¿151.0906 451.7243 m°¿179.4094 451.7243 l°¿$188.9094 451.714 188.8784 442.919 y°¿188.8784 343.2932 l°¿S°¿u°¿0 O°¿0 g°¿1 w°¿°¿478.1663 345.7069 m°¿475.8924 338.9648 L°¿473.6663 345.7228 l°¿8474.9132 344.8434 477.1632 344.8354 478.1663 345.7069 c°¿f°¿U°¿1 R°¿0 G°¿0.5 w°¿°¿476.0547 342.9733 m°¿476.0641 443.5983 l°¿$476.625 451.8827 467.125 451.8667 V°¿429.247 451.8594 l°¿%419.747 451.8755 420.4212 443.6246 y°¿420.4306 338.8746 l°¿S°¿485.4857 338.781 m°¿485.4763 443.5935 l°¿&484.8125 451.8881 494.3125 451.8721 V°¿509.0625 451.875 l°¿S°¿%%PageTrailer°¿
  1435. %%Trailer°¿+Adobe_IllustratorA_AI3 /terminate get exec°¿)Adobe_typography_AI3 /terminate get exec°¿&Adobe_customcolor /terminate get exec°¿ Adobe_cshow /terminate get exec°¿$Adobe_cmykcolor /terminate get exec°¿&Adobe_packedarray /terminate get exec°¿%%EndDocument†øÍ◊#ˇ ˇˇˇˇ#◊ 
  1436. d,     Helvetica .°dONLNd (.s+FIDEADLOCK    °dONLNd    /(:6*BY°dONLNd /6:9) °dONLNd /8:e)GORDON°dONLNd/e:h)- °dONLNd/g:ú)SHERIDAN"68# 696/"60#"78("70(°dONLNdJ(UÁ(qF0Deadlock is a state in which each of two or more°dONLNdNU(`ˇ* 6processes is waiting for one of the other processes to°dONLNdÖ`(k * 7release some resource necessary for its completion. The°dONLNdΩk(v* ;resource may be a file, a global variable, or even the CPU.°dONLNd˘v(Å * 8The process could, for example, be an application’s main°dONLNd2Å(å¥* "event loop or a Time Manager task.°dONLNdUî(ü*7When deadlock occurs on the Macintosh, usually at least°dONLNdçü(™˙* 5one of the processes is executing as the result of an°dONLNd√™(µ* 7interrupt. VBL tasks, Time Manager tasks, Deferred Task°dONLNd˚µ(¿* 1Manager tasks, completion routines, and interrupt°dONLNd-¿(À* :handlers can all interrupt an application’s main thread of°dONLNdhÀ(÷Ù* 2execution. When the interrupted process is using a°dONLNdõ÷(·Ì* 1resource that the interrupting process needs, the°dONLNdÕ·(Ïñ* processes are deadlocked.°dONLNdÁÙ(ˇ*5For example, suppose a Time Manager task periodically°dONLNdˇ(
  1437. Û* 3writes data to a file by making a synchronous Write°dONLNdQ
  1438. (* 8request, and an application reads the data from its main°dONLNdä( * 6event loop. Depending on the frequency of the task and°dONLNd¡ (+* 8the activity level of the File Manager, the Time Manager°dONLNd˙+(6* 7task may often write successfully. Inevitably, however,°dONLNd4JU(q=;the Time Manager task will interrupt the application’s Read°dONLNdpU`†*  request and deadlock will occur.°dONLNdëhs*6Because the File Manager processes only one request at°dONLNd»s~* 9a time, any subsequent requests must wait for the current°dONLNd~âÏ* 2request to complete. In this case, the synchronous°dONLNd5âî* 7request made by the Time Manager task must wait for the°dONLNdmîü˙* 7application’s Read request to complete before its Write°dONLNd•ü™* :request will be processed. Unfortunately, the File Manager°dONLNd‡™µ* 9must wait for the Time Manager task to complete before it°dONLNdµ¿˚* 5can resume execution. Each process is now waiting for°dONLNdP¿À* <the other to complete, and they’ll continue to wait forever.°dONLNdç”fi˝*6Synchronous requests at interrupt time tend to produce°dONLNdƒfiÈ* 7deadlock, because the call is queued for processing and°dONLNd¸ÈÙˆ* 8then the CPU sits and spins, waiting for an interrupt to°dONLNd5Ùˇ    * 9occur, which signals that the request has been completed.°dONLNdoˇ
  1439.     * >If interrupts are turned off, or if a previous pending request°dONLNdÆ
  1440. * ;can’t finish because it’s waiting to resume execution after°dONLNdÍ * >the interrupt, the CPU will wait patiently (and eternally) for°dONLNd) +* :the request to finish — until you yank the power cord from°dONLNdd+6@*     the wall. `8_8"`8# `9`3"`4 `5`/ `0_0"`0#, Palatino
  1441. °dONLNdpUaê(}6QShould Not Be Called From Within an Interrupt” are either incomplete or incorrect°dONLNd¬amÅ* Rand can’t be trusted entirely. The reasons why a system routine can’t be called at°dONLNd    myw* Linterrupt time include: the routine may move memory; the routine may cause a°dONLNd    byÖè* Tdeadlock condition; the routine is not reentrant. This article shows how to postpone°dONLNd    ∑Öëç* Umost system calls until a safe time. You’re encouraged to call as few system routines°dONLNd
  1442. ëùö* at interrupt time as possible.°dONLNd
  1443. -©µÜ*SThe routines discussed in this article are low-level calls to the File Manager, the°dONLNd
  1444. ŵ¡t* JDevice Manager (including AppleTalk driver, Serial Driver, and disk driver°dONLNd
  1445. áÕ[* Hcalls), and the PPC Toolbox. All these routines take the following form:,
  1446. Courier    °dONLNd ⁄Âq*EFUNCTION SomeFunction (pbPtr: aParamBlockPtr; async: BOOLEAN): OSErr;
  1447. °dONLNd [Ò˝]*FRoutines of this form are executed synchronously when async = FALSE or°dONLNd ¢˝    º* !asynchronously when async = TRUE. x4x&,Times ({) +
  1448. 7(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1449. March 1993ˇÙ◊#ˇ ˇˇˇˇ#◊ 
  1450. d,     Helvetica .°dONLNdñ'Ù+¥B DETERMINING°dONLNd Ù'¯)^ °dONLNd ˜'l) ASYNCHRONOUS°dONLNdl'p)u °dONLNdo'í)CALL°dONLNdí'ñ)# °dONLNdï'Ó)
  1451. COMPLETION, Palatino
  1452. °dONLNd)+ñ7¯(S¥KYour program can use two methods to determine when an asynchronous call has°dONLNdu7ñCÏ* Lcompleted: periodically poll for completion (check the ioResult field of the°dONLNd¬CñO* Qparameter block passed to the function) or use a completion routine. Both methods°dONLNdOñ[Í* Jenable your program to continue with other operations while waiting for an°dONLNd_[ñg* asynchronous call to complete.    °dONLNd~xñɃ*POLLING°dONLNdÖxƒÉ«). °dONLNdÜxΔÉ€)FOR°dONLNdâx€Éfi) °dONLNdäx›É!)
  1453. COMPLETION
  1454. °dONLNdïÉñè˘(´¥NPolling for completion is a simple method to use when you have only one or two°dONLNd‰èñõ* Uasynchronous calls outstanding at a time. It’s like giving someone a task and calling°dONLNd:õñß* Pthem periodically to see if they’ve completed it. When your program fills in the°dONLNdãßñ≥Ú* Oparameter block to pass to the function, it sets the ioCompletion field to NIL,°dONLNd€≥ñøÚ* Oindicating that there’s no completion routine. Then, after calling the function°dONLNd+øñÀ* Rasynchronously, your program only needs to poll the value of the ioResult field of°dONLNd~Àñ◊ * Ethe parameter block passed to the function and wait for it to change:°dONLNd≈›©ÈØ+•°dONLNd«›µÈ€) DA positive value indicates the call is either still queued or in the°dONLNd ȵı* process of executing.°dONLNd"˚©Ø(#«•°dONLNd$˚µ√) >A value less than or equal to 0 (noErr) indicates the call has°dONLNdcµ™* 6completed (either with or without an error condition).°dONLNdöñ+(G¥PPolling is usually straightforward and simple to implement, which makes the code°dONLNdÎ+ñ7* Qused to implement polling easy to debug. The following code shows an asynchronous°dONLNd=7ñCx* 2PPCInform call and how to poll for its completion:,
  1455. Courier    °dONLNdpPñ[*PROCEDURE MyPPCInform;°dONLNdà\§g≥+ VAR°dONLNdéh≥sÍ+ err: OSErr;°dONLNdöh˚sı)H2{ Error conditions are ignored in this procedure }°dONLNd‘t˚* 1{ because they are caught in PollForCompletion. }°dONLNdåñóØ(≥¥BEGIN°dONLNdò§£è+ /gPPCParamBlock.informParam.ioCompletion := NIL;°dONLNd>§§Ø≠* 5gPPCParamBlock.informParam.portRefNum := gPortRefNum;°dONLNdu∞§ªä* .gPPCParamBlock.informParam.autoAccept := TRUE;°dONLNd•º§«ô* 1gPPCParamBlock.informParam.portName := @gPPCPort;°dONLNdÿ»§”Δ* :gPPCParamBlock.informParam.locationName := @gLocationName;°dONLNd‘§flû* 2gPPCParamBlock.informParam.userName := @gUserName;°dONLNdH‡§Îº* 8err := PPCInform(PPCInformPBPtr(@gPPCParamBlock), TRUE);°dONLNdÅÏñ˜™(¥END;
  1456. °dONLNdÜñˇ*MIn this code, MyPPCInform calls the PPCInform function asynchronously with no°dONLNd‘ñ˜* Mcompletion routine (ioCompletion is NIL). The program can then continue to do°dONLNd"ñ'* Oother things while periodically calling the PollForCompletion procedure to find°dONLNdr'ñ3U* )out when the asynchronous call completes. xBx/,Times ({/ +
  1457. 8+md)e)v)e)l)o)p)  )
  1458. March 1993ˇ∞◊#ˇ ˇˇˇˇ#◊ 
  1459. d,
  1460. Courier    .°dONLNd$§+6@PROCEDURE PollForCompletion;°dONLNd%01* BEGIN°dONLNd$1&<*+ 4IF gPPCParamBlock.informParam.ioResult <= noErr THEN°dONLNd[=5HN+ BEGIN°dONLNda=`HÁ)+{ The call has completed. }°dONLNdÄICTB(pa3IF gPPCParamBlock.informParam.ioResult = noErr THEN°dONLNd∏UR`k+ BEGIN°dONLNd√a`l+ ${ The call completed successfully. }°dONLNdÏmRxa(îpEND°dONLNdÛyCÑW(†aELSE°dONLNd¸ÖRêk+ BEGIN°dONLNdë`ú+ &{ The call failed, handle the error. }°dONLNd2ùR®f(ƒpEND;°dONLNd9©5¥I(–SEND;°dONLNd>µ¿,(‹6END;, Palatino
  1461. °dONLNdCÃÿu*LPollForCompletion checks the value of the ioResult field to find out whether°dONLNdêÿ‰è* PPPCInform has completed. If the call has completed, PollForCompletion checks for°dONLNd·‰$* ;an arror condition and then performs an appropriate action.°dONLNd¸ã*SThere are three important things to note in this example of polling for completion:°dONLNdr+1+•°dONLNdt7^) =The parameter block passed to PPCInform, gPPCParamBlock, is a°dONLNd≤7&Z* ?program global variable. Since the parameter block passed to an°dONLNdÚ&72`* Basynchronous call is owned by the system until the call completes,°dONLNd527>G* <the parameter block must not be declared as a local variable°dONLNdr>7Jb* ?within the routine that makes the asynchronous call. The memory°dONLNd≤J7VN* ?used by local variables is released to the stack when a routine°dONLNdÚV7bI* >ends, and if that part of the stack gets reused, the parameter°dONLNd1b7nZ* Bblock, which could still be part of an operating system queue, can°dONLNdtn7zV* Aget trashed, causing either unexpected results or a system crash.°dONLNd∂z7ÜT* =Always declare parameter blocks globally or as nonrelocatable°dONLNdÙÜ7íé* objects in the heap.°dONLNd    ò+§1(¿I•°dONLNd ò7§O) ;Calls to PollForCompletion must be made from a program loop°dONLNdG§7∞R* ?that’s not executed completely at interrupt time. This prevents°dONLNdá∞7ºb* Bdeadlock. You don’t necessarily have to poll from an application’s°dONLNd º7»b* Devent loop (which is executed at noninterrupt time), but if you poll°dONLNd»7‘X* Afrom code that executes at interrupt time, that code must give up°dONLNdQ‘7‡ô* control between polls.°dONLNdhÊ+Ú1(I•°dONLNdjÊ7ÚP) <PollForCompletion checks the ioResult field of the parameter°dONLNdßÚ7˛B* 9block to determine whether PPCInform completed and, if it°dONLNd·˛7
  1462. * /completed, to see if it completed successfully.°dONLNd"ã(>6POne drawback to polling for completion is latency. When the asynchronous routine°dONLNdb".â* Tcompletes its job, your program won’t know it until the next time you poll. This can°dONLNd∑.:t* Kbe wasted time. For example, assume you give someone a task and ask them if°dONLNd:Fç* Uthey’re done (poll) only once a day: if they finish the task after an hour, you won’t x4x&,Times ({) ,     Helvetica+
  1463. 9(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1464. March 1993ˇ◊#ˇ ˇˇˇˇ#◊ 
  1465. d,     Helvetica .°dONLNd,%:k+CUFUNCTION°dONLNd,k:o)F °dONLNd    ,n:Æ)RESULTS°dONLNd,Æ:≤)@ °dONLNd,±:Œ)AND°dONLNd,Œ:“) °dONLNd,—:)FUNCTION°dONLNd,:)F °dONLNd,:s)
  1466. COMPLETION    °dONLNd*;%F3(bCBY°dONLNd,;3F6) °dONLNd-;5FW)SCOTT°dONLNd2;WFZ)" °dONLNd3;YFv)BOYD°dONLNd7;vFy) °dONLNd8;xFç)AND°dONLNd;;çFê) °dONLNd<;èF°)JIM°dONLNd?;°F§) °dONLNd@;£FÀ)LUTHER"B5# B6B,"B-#"C5("C-(°dONLNdIW%bÒ(~C4Not all function results are equal. Ignore some, pay°dONLNd~c%n„* 1attention to others. Ignore function results from°dONLNd∞o%z    * 5asynchronous File Manager and PPC Toolbox calls. They°dONLNdÊ{%ÜÎ* 3contain no useful information. To get useful result°dONLNdá%íˆ* 6information, wait for the call to complete, then check°dONLNdQì%û‡* 1ioResult or register D0; both contain the result.°dONLNdÉß%≤˛*5Both the File Manager and the PPC Toolbox will always°dONLNdπ≥%æˇ* 9call your completion routine if you specified one. If you°dONLNdÛø%     * <didn’t supply one, and instead are polling, test ioResult in°dONLNd0À%÷* 8your parameter block. The call has completed if ioResult°dONLNdi◊%‚ö* is less than or equal to noErr.°dONLNdãW bˇ(~>6Don’t ignore function results from asynchronous Device°dONLNd¬c nÓ* 4Manager calls (for example, AppleTalk driver, Serial°dONLNd˜o zÛ* 9Driver, and disk driver calls). The function result tells°dONLNd1{ Ü* 5you whether the Device Manager successfully delivered°dONLNdgá í˚* 7your request to the device driver. Success is indicated°dONLNdüì û * ,by noErr; any other value indicates failure.°dONLNdÃß ≤Ì*4The system calls your completion routine only if the°dONLNd≥ æ˝* 5Device Manager successfully delivered your request to°dONLNd7ø  È* 2the driver. On completion, check whether your call°dONLNdjÀ ÷fl* 0succeeded by looking in ioResult or register D0. l5 5" 5#  6 0" 1  2 , l- -" -#, Palatino
  1467. °dONLNdúñÒ()¥Mthey’ve completed the task until 23 hours later (a 23-hour latency). To avoid°dONLNdÍñÚ* Olatency, use completion routines instead of polling ioResult to find out when a°dONLNd:ñ%Ë* routine completes.    °dONLNdM6ñA∑*USING°dONLNdR6∑A∫)! °dONLNdS6πA˝)
  1468. COMPLETION°dONLNd]6˝A)D °dONLNd^6ˇA4)ROUTINES
  1469. °dONLNdgAñMÔ(i¥KMaking an asynchronous call with a completion routine is only slightly more°dONLNd≥MñY˙* Ocomplex than polling for completion. A completion routine is a procedure that’s°dONLNdYñe* Qcalled as soon as the asynchronous function completes its task. When your program°dONLNdUeñq* Wfills in the parameter block to pass to the function, it sets the ioCompletion field to°dONLNd≠qñ}˛* Qpoint to the completion routine. Then, after calling the function asynchronously,°dONLNdˇ}ñâ    * Qyour program can continue. When the function completes, the system interrupts the°dONLNdQâñï¯* Nprogram that’s running and the completion routine is executed. (There are some°dONLNd†ïñ°Ê* Mspecial things you need to know about function results to use this model; see°dONLNdÓ°ñ≠b* ,“Function Results and Function Completion.”)°dONLNdπñ≈*TSince the completion routine is executed as soon as the function’s task is complete,°dONLNdp≈ñ—* Pyour program finds out about completion immediately and can start processing the°dONLNd¡—ñ›
  1470. * Uresults of the function. Using a completion routine is like giving someone a task and°dONLNd    ›ñÈß* =then asking them to call you as soon as they’ve completed it.°dONLNd    Uıñ*TBecause a completion routine may be called at interrupt time, it can’t assume things°dONLNd    ™ñ˙* Mthat most application code can. When a completion routine for an asynchronous°dONLNd    ¯ññ* <function gets control, the system is in the following state:°dONLNd
  1471. 5©+Ø+•°dONLNd
  1472. 7µ+÷) @On entry, register A0 points to the parameter block used to make°dONLNd
  1473. x+µ7* the asynchronous call. xBx/,Times ({& +
  1474. 10+md)e)v)e)l)o)p)  )
  1475. March 1993ˇ¶◊#ˇ ˇˇˇˇ#◊ 
  1476. d, Palatino
  1477. .°dONLNd+$1+I@•°dONLNd7$T) <Your program again owns the parameter block used to make the°dONLNd?$70b* @asynchronous call, which means you can reuse the parameter block°dONLNdÄ07<6* 8to make another asynchronous call (see the section “Call°dONLNdπ<7H»* !Chaining” later in this article).°dONLNd€N+Z1(vI•°dONLNd›N7Z[) @Both register D0 and ioResult in the parameter block contain the°dONLNdZ7f‘* %result status from the function call.°dONLNdDl+x1(îI•°dONLNdFl7xJ) <For completion routines called by the File Manager or Device°dONLNdÉx7ÑT* >Manager, the A5 world is undefined and must be restored before°dONLNd¬Ñ7êL* =the completion routine uses any application global variables.°dONLNdú®É(ƒ6RSince completion routines execute at interrupt time, they must follow these rules:°dONLNdSÆ+∫1+•°dONLNdUÆ7∫A) :They must preserve all registers except A0, A1, and D0-D2.°dONLNdê¿+Ã1(ËI•°dONLNdí¿7ÃE) =They can’t call routines that can directly or indirectly move°dONLNd–Ã7ÿI* ;memory, and they can’t depend on the validity of handles to°dONLNd ÿ7‰Ä* unlocked blocks.°dONLNdÍ+ˆ1(I•°dONLNdÍ7ˆZ) ?They shouldn’t perform time-consuming tasks, because interrupts°dONLNd_ˆ7^* ?may be disabled. As pointed out in the Macintosh Technical Note°dONLNdü7Z* “NuBus°dONLNd•Z a((x™
  1478. °dONLNd¶aG+1 Interrupt Latency (I Was a Teenage DMA Junkie),”°dONLNdÿ7](6UAdisabling interrupts and taking over the machine for long periods°dONLNd7&>* <of time “almost always results in a sluggish user interface,°dONLNdW&72Y* ?something which is not usually well received by the user.” Some°dONLNdó27>?* :ways to defer time-consuming tasks are shown later in this°dONLNd”>7JY* article.°dONLNd‹P+\1(xI•°dONLNdfiP7\J) =They can’t make synchronous calls to device drivers, the File°dONLNd\7h=* :Manager, or the PPC Toolbox for the reasons given earlier.,     Helvetica    °dONLNdWuÄ-(ú6PPC°dONLNdZu-Ä0) °dONLNd[u0ÄW)Toolbox°dONLNdbuWÄZ)' °dONLNdcuZÄê)
  1479. completion°dONLNdmuêÄì)6 °dONLNdnuìĺ)routines°dONLNdvuºÄ√)). 
  1480. °dONLNdxt√Äè)-The PPC Toolbox simplifies the job of writing°dONLNd¶Äå(®6Ncompletion routines. When a PPC Toolbox function is called asynchronously, the°dONLNdıåòá* Tcurrent value of register A5 is stored. When the completion routine for that call is°dONLNdJò§~* Nexecuted by the PPC Toolbox, the stored A5 value is restored and the parameter°dONLNdô§∞g* Kblock pointer used to make the call is passed as the input parameter to the°dONLNdÂ∞ºo* completion routine.°dONLNd˘»‘e*IA completion routine called by the PPC Toolbox has this format in Pascal:,
  1481. Courier    °dONLNdC·Ï0*8PROCEDURE MyCompletionRoutine (pbPtr: PPCParamBlockPtr);
  1482. °dONLNd|¯s*NPPC Toolbox completion routines are still called at interrupt time and so must°dONLNdÀË* 0follow the rules of execution at interrupt time.°dONLNd¸(s*JThe following code shows an asynchronous PPCInform call and its completion°dONLNdG(4;* routine. x4x&,Times ({) +
  1483. 11(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1484. March 1993ˇ,◊#ˇ ˇˇˇˇ#◊ 
  1485. d,
  1486. Courier    .°dONLNdñ$ï+¥@3PROCEDURE InformComplete (pbPtr: PPCParamBlockPtr);°dONLNd4%ñ0Ø* BEGIN°dONLNd;1§<{+ +IF pbPtr^.informParam.ioResult = noErr THEN°dONLNdi=≥HÃ+ BEGIN°dONLNdrI¡Tß+ .{ The PPCInform call completed successfully. }°dONLNd£U≥`¬(|—END°dONLNd®a§l∏(à¬ELSE°dONLNdØm≥xÃ+ BEGIN°dONLNd∏y¡Ñ±+ 0{ The PPCInform call failed; handle the error. }°dONLNdÎÖ≥ê«(¨—END;°dONLNdëñú™(∏¥END;°dONLNdı©ñ¥*PROCEDURE DoPPCInform;°dONLNdµ§¿≥+ VAR°dONLNd¡≥ÃÍ+ err: OSErr;°dONLNd¡˚Ãı)H2{ Error conditions are ignored in this procedure }°dONLNdYÕ˚ÿ·* .{ because they are caught in InformComplete. }°dONLNdàÂñØ( ¥BEGIN°dONLNdèÒ§¸À+ ;gPPCParamBlock.informParam.ioCompletion := @InformComplete;°dONLNdÃ˝§≠* 5gPPCParamBlock.informParam.portRefNum := gPortRefNum;°dONLNd    §ä* .gPPCParamBlock.informParam.autoAccept := TRUE;°dONLNd3§ ô* 1gPPCParamBlock.informParam.portName := @gPPCPort;°dONLNdf!§,Δ* :gPPCParamBlock.informParam.locationName := @gLocationName;°dONLNd¢-§8û* 2gPPCParamBlock.informParam.userName := @gUserName;°dONLNd÷9§Dº* 8err := PPCInform(PPCInformPBPtr(@gPPCParamBlock), TRUE);°dONLNdEñP™(l¥END;, Palatino
  1487. °dONLNd\ñhı*JIn this code, DoPPCInform calls PPCInform asynchronously with a completion°dONLNd_hñt* Qroutine (ioCompletion contains a pointer to InformComplete). The program can then°dONLNd±tñÄ* continue to do other things.°dONLNdœåñò    *OWhen PPCInform completes, control is passed to InformComplete with a pointer to°dONLNdòñ§˛* JgPPCParamBlock. InformComplete checks the result returned by PPCInform and°dONLNdj§ñ∞=* $then performs an appropriate action.°dONLNdêºñ»    *QHere are the important things to note in this example of a PPC Toolbox completion°dONLNd‚»ñ‘π* routine:°dONLNdÎ⁄©ÊØ+•°dONLNdÌ⁄µÊ—) ;The parameter block gPPCParamBlock is declared globally for°dONLNd)ʵÚŸ* Bthe reasons given earlier in the section “Polling for Completion.”°dONLNdm¯©Ø( «•°dONLNdo¯µ€) ?InformComplete checks the ioResult field of the parameter block°dONLNdص∂* 6to determine whether PPCInform completed successfully.,     Helvetica    °dONLNdÊñ(®(D¥File°dONLNdÍ®(´) °dONLNdΙ(‘)Manager°dONLNdÚ‘(◊)* °dONLNdÛ÷(Ë)and°dONLNdˆË(Î) °dONLNd˜Í( )Device°dONLNd˝ ()" °dONLNd˛(8)Manager°dONLNd8(;)* °dONLNd:(p)
  1488. completion°dONLNdp(s)6 °dONLNdr(õ)routines°dONLNdõ(û)) °dONLNdù(¶)in°dONLNd¶(©)     °dONLNd®(Ÿ)
  1489. high-level°dONLNd()ñ4…(P¥    languages°dONLNd1)…4Õ)3.
  1490. °dONLNd2(Õ4Ù)? File Manager and Device Manager completion routines written in°dONLNdq(Ù4¸(P a xBx/,Times ({& +
  1491. 12+ã
  1492.  
  1493. COMPLETION)5 )ROUTINE)$ )ADDRESS(ô¥ GENERATION  )9When you fill a parameter(£¥0block’s ioCompletion field with the address of a*
  1494. 2completion routine, your compiler has to calculate*
  1495. +the address of the completion routine. Most*
  1496. /compilers generate that address either as a PC-*
  1497. 0relative reference (the address of the routine’s*
  1498. 0entry point within the local code segment) or as*
  1499. ,an A5-relative reference (the address of the(èv-routine’s jump table entry). If your compiler*
  1500. 2generates and A5-relative reference, the code that*
  1501. /generates the address of the completion routine*
  1502. must )( run with the program’s A5 world set up.(¡v(MPW Pascal defaults to using PC-relative*
  1503. 0references when routines are in the same segment*
  1504. 1and uses A5-relative references when routines are*
  1505. /in a different segment. MPW C defaults to using(ÚDd)e)v)e)l)o)p)  )
  1506. March 1993ˇî◊#ˇ ˇˇˇˇ#◊ 
  1507. d, Palatino
  1508. .°dONLNd$Å+6@Mhigh-level language such as Pascal or C are more complicated than PPC Toolbox°dONLNdN$0ê* Tcompletion routines. They must take additional steps to get the value in register A0°dONLNd£0<X* Iand, if program global variables will be used, restore register A5 to the°dONLNdÌ<Ho* Kapplication’s A5 value. The reason for this is that File Manager and Device°dONLNd9HTÇ* OManager completion routines are called with the pointer to the call’s parameter°dONLNdâT` * 5block in register A0 and with the A5 world undefined.°dONLNdølxÖ*PIn most high-level languages, registers A0, A1, and D0-D2 are considered scratch°dONLNdxÑâ* Uregisters by the compiler and aren’t preserved across routine calls. For this reason,°dONLNdfÑêë* Uyou should not depend on register values as input parameters to routines written in a°dONLNdºêú* 8high-level language. Examples of completion routines in °dONLNdÙêúg(∏7Inside Macintosh°dONLNdêgúÖ)N and in°dONLNd ú®É(ƒ6Pseveral Macintosh Technical Notes use short inline assembly routines to retrieve°dONLNd]®¥˜* 2the value of register A0, in the following manner:,
  1509. Courier    °dONLNdë¡ÃÆ*FUNCTION GetPBPtr: ParmBlkPtr;°dONLNd∞ÕÿÙ* ,{ Return the pointer value in register A0. }°dONLNd›Ÿ‰Y* INLINE $2E88;°dONLNdΟ`‰∫)H{ MOVE.L A0,(A7) }°dONLNd˛Ò¸Æ(6PROCEDURE MyCompletionRoutine;°dONLNd˝g* C{ This procedure gets called when an asynchronous call completes. }°dONLNdb    &5+ VAR°dONLNdh5 è+ pbPtr: ParmBlkPtr;°dONLNd{-81(T6BEGIN°dONLNdÇ9&DÄ+ pbPtr := GetPBPtr;°dONLNdï9åDJ)f&{ Retrieve the value in register A0. }°dONLNdΩE&Pl(lDDoWork(pbPtr);°dONLNdÕEåPw)f/{ Call another routine to do the actual work. }°dONLNd˝Q\,(x6END;
  1510. °dONLNdhtÜ*NAlthough the GetPBPtr inline assembly routine works with today’s compilers, be°dONLNdQtÄ* Qcareful, because register A0 could be used by the compiler for some other purpose°dONLNd£Äå* Obefore the statement with the inline assembly code is executed. As shown in the°dONLNdÛåò* Oprevious example, you can minimize the chances of the compiler using a register°dONLNdCò§x* Pbefore you retrieve its value by retrieving the register value in the completion°dONLNdî§∞ã* Troutine’s first statement and then doing as little as possible within the completion°dONLNdÈ∞º* 9routine (call another routine to do any additional work).°dONLNd#»‘~*PThe safest way to use register values as input parameters to completion routines°dONLNdt‘‡ã* Swritten in a high-level language is to use a completion routine written in assembly°dONLNd»‡Ïv* Mlanguage that calls a routine written in a high-level language. The following°dONLNdϯ{* Lrecord type allows File Manager and Device Manager completion routines to be°dONLNdc¯á* Pwritten in high-level languages such as C or Pascal with only one small assembly°dONLNd¥|* Olanguage routine. This record also holds the application’s A5 value so that the°dONLNd    w* Ncompletion routine can restore A5 and application globals can be accessed from°dONLNd    S(£* within the completion routine. x4x&,Times ({) ,     Helvetica+
  1511. 13(è6.A5-relative references. THINK Pascal and THINK*
  1512. /C always use A5-relative references. MPW Pascal*
  1513. +and MPW C allow you to change their default*    method with the )7-b+ (¨wcompiler option.+6•+∞DA)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1514. March 1993ˇö◊#ˇ ˇˇˇˇ#◊ 
  1515. d,
  1516. Courier    .°dONLNdñ$™+¥@TYPE°dONLNd%§00+ extendedPBPtr = ^extendedPB;°dONLNd$1§<* extendedPB = RECORD°dONLNd;=¡H‰+ ourA5: °dONLNdE=
  1517. H2)ILONGINT;°dONLNdO=RH∂)H{ Application's A5 }°dONLNdgI¡T4(pflourCompletion: ProcPtr;°dONLNdÄIRT )ë%{ Address of the completion routine }°dONLNd≥UR`* ${ written in a high-level language }°dONLNd€a¡l’(àflpb: °dONLNd‚a˚lA):ParamBlockRec;°dONLNdÒaRl )W%{ Parameter block used to make call }°dONLNdm≥x«(î—END;, Palatino
  1518. °dONLNdÑñêÔ(¨¥KPreCompletion, a small assembly language routine, is used as the completion°dONLNdjêñú…* Broutine for all File Manager and Device Manager asynchronous calls°dONLNd≠úñ®* Q(PreCompletion comes preassembled and ready to link with your C or Pascal code on°dONLNdˇ®ñ¥®* the °dONLNd®®¥)Developer CD Series°dONLNd®¥ )_; disc). PreCompletion preserves the A5 register, sets A5 to°dONLNdR¥ñ¿(‹¥Sthe application’s A5, calls the designated Pascal completion routine with a pointer°dONLNd¶¿ñÃ* Sto the parameter block used to make the asynchronous call, and then restores the A5°dONLNd˙Ãñÿº*     register:    °dONLNdÂñ◊*PreCompletion°dONLNdÂfiÚ)HPROC°dONLNdÂ˚)EXPORT°dONLNd Ò≥¸«(—LINK°dONLNd&Òfi¸˜)+A6,#0°dONLNd/Ò5¸≠)W; Link for the debugger.°dONLNdJ˝≥÷($—MOVEM.L°dONLNdR˝fi)+A5,-(SP)°dONLNd]˝5®)W; Preserve A5 register.°dONLNdw    ≥—(0—MOVE.L°dONLNd~    fi)+A0,-(SP)°dONLNdâ    5‰)W#; Pass PB pointer as the parameter.°dONLNdØ≥ —(<—MOVE.L°dONLNd∂fi  )+    -8(A0),A5°dONLNd¬5 ⁄)W!; Set A5 to passed value (ourA5).°dONLNdÊ!≥,—(H—MOVE.L°dONLNdÌ!fi, )+    -4(A0),A0°dONLNd˘!5,¯)W'; A0 = real completion routine address.°dONLNd#-≥8¬(T—JSR°dONLNd(-fi8Ú)+(A0)°dONLNd1-58È)W$; Transfer control to ourCompletion.°dONLNdX9≥D÷(`—MOVEM.L°dONLNd`9fiD)+(SP)+,A5°dONLNdk95D£)W; Restore A5 register.°dONLNdÑE≥P«(l—UNLK°dONLNdäEfiPË)+A6°dONLNdíE5Pb)W    ; Unlink.°dONLNdûQ≥\¬(x—RTS°dONLNd©Q5\b)Ç    ; Return.°dONLNdµ]≥h—(Ñ—STRING°dONLNdº]fihÚ)+ASIS°dONLNd√i≥t«(ê—DC.B°dONLNd…ifit=)+$8D,'PreCompletion'°dONLNd›iDt≤)f; The debugger string.°dONLNdˆu≥Ä«(ú—DC.W°dONLNd¸ufiĘ)+$0000°dONLNdÅ≥å—(®—STRING°dONLNd Åfiå¸)+PASCAL°dONLNdç≥ò«(¥—ENDP°dONLNdô≥§¬* END
  1519. °dONLNd∞ñº(ÿ¥OBefore an application makes an asynchronous call, it initializes the extendedPB°dONLNdoºñ»˘* Mrecord with the application’s A5 and the address of the high-level language’s°dONLNdΩ»ñ‘* Ocompletion routine. The ioCompletion field of the extendedPB record’s parameter°dONLNd‘ñ‡ë* 7block is initialized with the address of PreCompletion:    °dONLNdEÌñ¯,*myExtPB.ourA5 := SetCurrentA5;°dONLNdd˘ñ|* .myExtPB.ourCompletion := @MyCompletionRoutine;°dONLNdìñh* *myExtPB.pb.ioCompletion := @PreCompletion;
  1520. °dONLNdæñ(ˇ*MThe high-level language’s completion routine called by PreCompletion has this°dONLNd (ñ4„* format in Pascal:    °dONLNd@ñKê*2PROCEDURE MyCompletionRoutine (pbPtr: ParmBlkPtr); xBx/,Times ({& ,     Helvetica+
  1521. 14+md)e)v)e)l)o)p)  )
  1522. March 1993ˇÙ◊#ˇ ˇˇˇˇ#◊ 
  1523. d, Palatino
  1524. .°dONLNd#p+6?JWhen MyCompletionRoutine is called, register A5 has been set to the stored°dONLNdK#/u* Kapplication A5 and pbPtr points to the parameter block (within the extended°dONLNdó/;    * 4parameter block) used to make the asynchronous call.°dONLNdÃHTê*TThe rest of this article shows how to use asynchronous calls and completion routines°dONLNd!T`Ñ* Oto your program’s advantage and describes various techniques for working around°dONLNdq`lÔ* /the limitations imposed on completion routines.,     Helvetica °dONLNd°}ã3*THE°dONLNd§}3ã7) °dONLNd•}6ãM)BIG°dONLNd®}MãQ) °dONLNd©}Pã})THREE°dONLNdÆ}}ãÅ)- °dONLNdØ}Äãà)T°dONLNd∞}áãê)E°dONLNd±}èãô)C°dONLNd≤}òã◊)    HNIQUES
  1525. °dONLNd∫èõ{(∑6NThere are lots of techniques you can use when working with asynchronous calls.°dONLNd    õßw* NMost are useful for solving only one or two programming problems. This section°dONLNdXß≥í* Udescribes the three most useful techniques — the use of operating system queues, call°dONLNdÆ≥ø‘* (chaining, and extended parameter blocks.    °dONLNd◊–€U*    OPERATING°dONLNd‡–U€X)= °dONLNd·–W€Å)SYSTEM°dONLNdÁ–Å€Ñ)* °dONLNdË–É€Æ)QUEUES
  1526. °dONLNdÔ€Á#(6<After reading the description of operating system queues in °dONLNd+€#Áq(AInside Macintosh°dONLNd<ÁÛà(6PVolume II, you might assume they’re for use only by the operating system. Wrong!°dONLNdçÛˇã* RAny program can create an OS queue for its own purposes. OS queues are very useful°dONLNd‡ˇ Ä* Qin interrupt-time code such as completion routines, because the two routines that°dONLNd2 Ü* Nmanipulate OS queues, Enqueue and Dequeue, have the following characteristics:°dONLNdÅ+)1+•°dONLNdÉ7)[) @They disable all interrupts while they update the queue. This is°dONLNdƒ)75?* :very important because it prevents race conditions between°dONLNdˇ57AQ* ?interrupt and noninterrupt code accessing the queue. (See “Race°dONLNd?A7Mπ* Conditions and OS Queues.”)°dONLNd[S+_1({I•°dONLNd]S7_K) =They can be called at interrupt time, because they don’t move°dONLNdõ_7kY* >memory — they only manipulate a linked list of queue elements.°dONLNd⁄q+}1(ôI•°dONLNd‹q7}W) @They’re very fast and efficient, so they won’t be time-consuming°dONLNd}7âÂ* 'operations in your completion routines.°dONLNdEï°ç(Ω6OAn OS queue owned by your program can hold queue elements defined by the system°dONLNdï°≠Ñ* Ror queue elements of your own design. A queue element is a record that starts with°dONLNdË≠πn* Ktwo fields, qLink and qType. The qLink field is a QElemPtr that links queue°dONLNd4π≈ë* Selements together while they’re in an OS queue. The qType field is an integer value°dONLNdà≈—Ç* Othat identifies the queue element type. In OS queues owned by your program, you°dONLNdÿ—›í* Smay not need to use the qType field unless the OS queue can hold more than one type°dONLNd,›È=* @of queue element. Here’s how the system defines a queue element:,
  1527. Courier    °dONLNdmˆ^*QElem = RECORD°dONLNd~5S+ qLink:°dONLNdÖ`ç)+    QElemPtr;°dONLNdèö5):{ Link to next queue element. }°dONLNd±5S(5SqType:°dONLNd∏`à)+INTEGER;°dONLNd¡ö):{ Queue element type. }°dONLNd€5%À(AS{ Add your data fields here. }°dONLNd˚&&1:(MDEND; x4x&,Times ({) +
  1528. 15(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1529. March 1993ˇ¬◊#ˇ ˇˇˇˇ#◊ 
  1530. d,     Helvetica .°dONLNd %.J+CIRACE°dONLNd J.N)% °dONLNd M.£)
  1531. CONDITIONS°dONLNd £.ß)V °dONLNd ¶.√)AND°dONLNd √.«) °dONLNd Δ.⁄)OS°dONLNd ⁄.fi) °dONLNd ›.)QUEUES"65# 666+"6,#"75"7,    °dONLNd6%A(]C3When two or more processes share the same data, you°dONLNdTA%Lá* must be careful to avoid °dONLNdmAáLô)brace°dONLNdqAôLõ) °dONLNdrAõL≈)
  1532. conditions°dONLNd|A≈L )*. A race condition°dONLNdèL%W˜(sC2exists when data is simultaneously accessed by two°dONLNd¬W%b˙* 2processes. On the Macintosh, the two processes are°dONLNdıb%m˝* 6typically program code running with interrupts enabled°dONLNd-m%x·* /and code executing at interrupt time (such as a°dONLNd]x%Éu* completion routine).°dONLNdrã%ñ*5To prevent race conditions, you must have a method of°dONLNd®ñ%°Û* 2determining ownership of the shared data. A shared°dONLNd‹°%¨È* 2global flag isn’t safe because there can be a race°dONLNd¨%∑ˇ* 8condition with the flag. For example, the following code°dONLNdH∑%¬Ÿ* -can’t be used to claim ownership of a recond.,
  1533. Courier°dONLNdwœ*⁄fi+${ This can cause a race condition. }°dONLNdù€*ÊË* &IF gRecFree THEN { Is record in use? }°dONLNdΔÁ9ÚÌ+ $BEGIN { It wasn't when we checked. }°dONLNdÓÛG˛°+ gRecFree := FALSE;°dONLNdÛ≠˛)f{ Claim record. }°dONLNdˇG
  1534. í(&e{ Use record. }°dONLNd) Gú* gRecFree := TRUE;°dONLNd; ≠ )f{ Release record. }°dONLNdQ9"M(>WEND;°dONLNdW7B(^99A race condition can occur in this code because there’s a°dONLNdëCNÚ* 4small window of time between when the IF statement’s°dONLNdΔOZ˚* 7expression is evaluated and when the record is claimed.°dONLNd˛[f˝* 9During this time the program can be interrupted. The only°dONLNd8gr˝* 8way to prevent race conditions is to make the process of°dONLNdqs~˚* 8checking for and claiming ownership a step that can’t be°dONLNd™äJ* interrupted.°dONLNd∑ìûÔ*3OS queues and the Operating System Utility routines°dONLNdÎü™‰* /Enqueue and Dequeue provide a safe way to claim°dONLNd´∂¸* 6ownership of data. Enqueue and Dequeue briefly disable°dONLNdR∑¬¯* 8interrupts while manipulating the queue, so they’re safe°dONLNdã√Œp* from race conditions.°dONLNd¢⁄Â*8To use an OS queue to protect data from race conditions,°dONLNd€Â˛* 7make the data part of a queue element and put the queue°dONLNd˚Ï* 2element into an OS queue. Whenever any part of the°dONLNdF˚* 9program wants to manipulate data in the queue element, it°dONLNdÄ* 7attempts to remove the queue element from the OS queue.°dONLNd∏Ú* 7If the queue element isn’t in the queue and so can’t be°dONLNd'Î* 1removed, that means another process currently has°dONLNd"'2Ò* 6ownership of the queue element and the data within it. L5^5"_5# _6_/"_0 _1_+ L,^,"_,#, Palatino
  1535. °dONLNdZTñ`Â(|¥IThe following record types are some of the system-defined queue elements:°dONLNd§`ñl* FParamBlockRec, CInfoPBRec, DTPBRec, HParamBlockRec, FCBPBRec, WDPBRec,°dONLNdÎlñx…* 8CMovePBRec, MPPParamBlock, ATPParamBlock, XPPParamBlock,°dONLNd$xñÑ    * GDSPParamBlock, EParamBlock, PPCParamBlockRec, TMTask, DeferredTask, and°dONLNdlÑñêƒ* VBLTask.°dONLNduúñ®¸*NTo use an OS queue in your program, you need to allocate a queue header (QHdr)°dONLNdƒ®ñ¥ù* 9variable and possibly define your own queue element type:    °dONLNd˛¡ñÙ*TYPE°dONLNd    Õ§ÿD+  { Define a queue element type. }°dONLNd    &Ÿ§‰0* MyQElemRecPtr = ^MyQElemRec;°dONLNd    D§* MyQElemRec = RECORD°dONLNd    [Ò¡¸fl+ qLink:°dONLNd    bÒ̸),    QElemPtr;°dONLNd    o˝¡fl($flqType:°dONLNd    v˝Ì),INTEGER;°dONLNd    Ç    ¡‰(0flmyData:°dONLNd    ä    Ì$), myDataType;°dONLNd    ñ    5Û)H&{ Put any data fields you want here. }°dONLNd    ø≥ «(<—END; xBx/,Times ({& +
  1536. 16+md)e)v)e)l)o)p)  )
  1537. March 1993ˇ z◊#ˇ ˇˇˇˇ#◊ 
  1538. d,
  1539. Courier    .°dONLNd$'+6@VAR°dONLNd%&0+ 0{ Allocate a queue element and a queue header. }°dONLNd71&<N* myQElem:°dONLNd@1m<§)G MyQElemRec;°dONLNdM=&Hg(dDmyOSQueueHdr:°dONLNd[=mHÜ)GQHdr;, Palatino
  1540. °dONLNdaT`è(|6TYou must initialize the queue header before it’s used by setting its qHead and qTail°dONLNd∂`lV* fields to NIL:    °dONLNd≈yѧ*{ Initialize the OS queue. }°dONLNd‚Öêö* myOSQueueHdr.qHead := NIL;°dONLNd˝ëúö* myOSQueueHdr.qTail := NIL;
  1541. °dONLNd®¥    *4The queue element can then be added to the OS queue:    °dONLNdM¡é*{ Add myQElem to the queue. }°dONLNdkÕÿÔ* +Enqueue(QElemPtr(@myQElem), @myOSQueueHdr);
  1542. °dONLNdó‰à*QThis code shows how to remove a queue element (in this example, the first item in°dONLNdÈ¸⁄* ,the queue) from an OS queue before using it:    °dONLNd    '*VAR°dONLNd& ®+ myQElemPtr: MyQElemRecPtr;°dONLNd6-8(T60myQElemPtr := MyQElemRecPtr(myOSQueueHdr.qHead);°dONLNdg9Dï* IF myQElemPtr <> NIL THEN°dONLNdÅ9öDX)Ç&{ Make sure we have a queue element. }°dONLNd©E&P?(lDBEGIN°dONLNd±Q5\a+ <IF Dequeue(QElemPtr(myQElemPtr), @myOSQueueHdr) = noErr THEN°dONLNdÒ]Ch\+ BEGIN°dONLNd˚iRtÉ+ ={ We successfully removed the queue element from the queue, }°dONLNd=uRÄ * %{ so we can use myQElemPtr^.myData. }°dONLNdgÅRåj* 8{ In this example, we'll put the queue element back in }°dONLNd§çRò* &{ the queue when we're done with it. }°dONLNdœôR§3* -Enqueue(QElemPtr(myQElemPtr), @myOSQueueHdr);°dONLNd•C∞R(ÃaEND°dONLNd±5ºI(ÿSELSE°dONLNdΩC»\+ BEGIN°dONLNd…R‘y+ ;{ Someone else just claimed the queue element between the }°dONLNdX’R‡y* ;{ two IF statements and we just avoided a race condition! }°dONLNdò·RÏ∂* { Try again later. }°dONLNd∞ÌC¯W(aEND;°dONLNd∂˘&:( DEND;
  1543. °dONLNdªÇ(86OOS queues owned by your program can be used for many purposes, including these:°dONLNd "+.1+•°dONLNd"7.7) 8Completion routines can schedule work to be done by your°dONLNdF.7:J* >application’s event loop by putting requests into an OS queue. x4x&,Times ({) ,     Helvetica+
  1544. 17(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1545. March 1993ˇz◊#ˇ ˇˇˇˇ#◊ 
  1546. d, Palatino
  1547. .°dONLNd©$Ø+«@•°dONLNdµ$”) ?Extra buffers or parameter blocks needed by completion routines°dONLNdB$µ0«* =can be put into an OS queue by code called from the program’s°dONLNdÄ0µ<º* ;event loop. These buffers or parameter blocks can be safely°dONLNdº<µHö* 3claimed and used by code running at interrupt time.°dONLNdN©ZØ(v«•°dONLNdÚNµZ—) >Completion routines can schedule the processing of a completed°dONLNd1Zµfÿ* Acall by putting the parameter block used to make the call into an°dONLNdsfµr⁄* >OS queue. This is useful when the processing might move memory°dONLNd≤rµ~⁄* Aor take too much time and so can’t be performed in the completion°dONLNdÙ~µäÿ* routine.°dONLNd˛ê©úØ(∏«•°dONLNdêµúΩ) 8Data accessed and manipulated by both interrupt code and°dONLNd9úµ®ƒ* ?noninterrupt code can be protected from race conditions if it’s°dONLNdy®µ¥—* >stored in a queue element and the Dequeue and Enqueue routines°dONLNd∏¥µ¿“* >are used to claim and release ownership of the data from an OS°dONLNd˜¿µÃŸ* @queue (as described earlier in “Race Conditions and OS Queues”).,     Helvetica    °dONLNd8›ñË∞(¥CALL°dONLNd<›∞Ë≥) °dONLNd=›≤ËÂ)CHAINING
  1548. °dONLNdFËñÙ¸(¥LWhen a multistep operation is performed via multiple asynchronous calls with°dONLNdìÙñ#* !completion routines, it’s called °dONLNd¥Ù#b)çcall chaining.°dONLNd¬Ùb)?$ Each asynchronous call’s completion°dONLNdÁñ ˝((¥Oroutine reuses the parameter block passed to the completion routine to make the°dONLNd7 ñ* Rnext asynchronous call. Call chaining from completion routines allows your program°dONLNdäñ$Ï* Oto start the next step in a multistep operation with no latency (see Figure 2).°dONLNd⁄0ñ<*STo use call chaining, you must design your call chain; that is, you must decide the°dONLNd.<ñH˜* Norder of the asynchronous calls you want to make. For each completion routine,°dONLNd}HñT˛* Odetermine what step should be taken if the previous call completed successfully°dONLNdÕTñ`‚* Jwith no error condition and what step should be taken if the previous call°dONLNd`ñl* completed with an error.°dONLNd2xñÑÏ*KA chained call sequence may have several end points or breaks in the chain,°dONLNd~Ññê* Qdepending on what you’re trying to accomplish and what conditions are encountered°dONLNd–êñú* Nalong the way. For example, you may not want to make another asynchronous call°dONLNdúñ®* Ubecause an error condition occurred, because the next step your program needs to take°dONLNdu®ñ¥* Oinvolves a call that can’t be made at interrupt time, or because all steps were°dONLNd≈¥ñ¿Ù* Ncompleted successfully. The easiest way for your chained call sequence to pass°dONLNd¿ñà * Tcontrol back to noninterrupt code is through an OS queue. This technique is shown in°dONLNdiÃñÿc* -the section “Putting the Big Three Together.”    °dONLNdóÈñÙ“*    EXTENDING°dONLNd†È“Ù’)< °dONLNd°È‘Ù)    PARAMETER°dONLNd™ÈÙ)? °dONLNd´ÈÙ?)BLOCKS
  1549. °dONLNd≤Ùñ(¥QUnless you do a little extra work, a completion routine is somewhat isolated from°dONLNd    ñ * Rthe rest of your program. The only data accessible to a completion routine when it°dONLNd    W ñı* Nexecutes is the parameter block used to make the asynchronous call and, if you°dONLNd    ¶ñ$* Rpreserve and restore A5, the program’s global variables. As noted before, you must°dONLNd    ˘$ñ0≈* Dbe careful to avoid race conditions when accessing global variables. xBx/,Times ({& +
  1550. 18+md)e)v)e)l)o)p)  )
  1551. March 1993ˇ∏◊#ˇ ˇˇˇˇ#◊ 
  1552. 45566°d
  1553. ONLNf‰
  1554. 66*”<ò4@ù@ù66v”ÕÕÈÁËóÃËËïRËËï^ËËïPËËïLË˚Ä‘˚Ä‘˚Ä‘ ˚Äÿ‡ˇ ˚Äÿ¸ˇ˚÷ˇ¸ˇ ˚Äÿˇ ˚Äÿġ˚Ä‘˚Ä‘˚Ä‘˚Ä‘ÕÕÕÕÕÕÕÕÕÕÕœˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿ò4@Äù@Äùv6∂”œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ôò4Ä¿ùÄ¿ù∂6ˆ”˙˛@˛˛˝˛˝ Ô˚˘˛@˛˛˝˛˝ Ô˙I˛@˛˛˝˛˝ Ô˙I˛@˛˛˝˛˝ Ô˙I˛@˛˛˝˛˝ Ô˚π˛@˛˛˝˛˝ Ô˙·˛@˛˛˝˛˝ Ô˚Q˛@˛˛˝˛˝ Ô˚Q˛@˛˛˝˛˝ Ô˙a˛@˛˛˝˛˝ Ô˙·˛@˛˛˝˛˝ Ô˚˛@˛˛˝˛˝ Ô ˚˛@˛¿˝~˝!¯ ˚Ò˛@˛@˝˝ H˙˛@˛@˝˝ H"˚Ò˛@˛@¿?˛ H"˚˛@˛¿@n    ˛!¯"˚Ò˛@˛@8    ˛!P!˙˛@˛
  1555. Ä@T    ˛!P!˙·˛@˛
  1556. Ä¿T7˛ `!˚Q@˛
  1557. IJ Ô"˚Q!@˛
  1558. Ä*˛  !˙a!@˛
  1559. IJT*˛!P ˙!@˛˝  ˛ Ä˙!@˛˛˛˛˝ Ô"˚Q@˛?ÄÄ    ¸˛'!˙Å"@˛ÄÄD"˛!!˙"@˛Ä?ÄD"˛!!˙@˛Ä8˛˛ ‡"˚˘˛@˛˛˛>˛ ‡!˙>@˛ÄÄ8 ˛! ˙@˛Ä˝D>˛!˙>@˛˝D˝ ‡!˚¡˛@˛˛˛8˛ Ô!˙q@˛Ä
  1560. Ä|*˛!!˙I?@˛Ä
  1561. Ä*˛ !˙q˛@˛Ä˛| ˛! ˚¡>@˛˛˛˛˝ Ô"˚¡@˛    
  1562. IJ˛  !˙9@˛
  1563. IJ*˛!P ˙Ò"@˛˝T˛ Ä ˚    "@˛˛    Ä ˝ Ô"˚    @˛    ¿˛˛ ‡!˚    ˛@˛
  1564. Ä˝8?˛!P˙ë?@˛
  1565. Ä˝T˝!P˙·˛@˛˝T˝ `!˚˛@˛˛
  1566. ¿˛ Ô!˚˛@˛˛
  1567. @˛!˛ Ô ˙·˛@˛˛
  1568. @˛!˛ Ô!˙˛@˛˛
  1569. Ä~!˛ !˚Ò˛@˛˝R˛!˙˛@˛Ä˝R˝! ˚Ò˛@˛@˝l˝!˙˛@˛Ä˝˛˝ ê˙˛@˛˝˛˝ Ô˚˘˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˚Ò˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙·˛@˛˛˝˛˝ Ô˚˛@˛˛˝˛˝ Ô˚˛@˛˛˝˛˝ Ô˙·˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ ÔòÅû@ùHHgå#.IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1570. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@ù66v”'ÅÅÅ„ÅÅń۞ˇ˛ˇˇÅØÅπˇˇ¸ˇˇˇÅπÅπˇˇˇˇˇˇˇÅ∫Åπ ˇ˛ˇ˛ˇ˛˛ˇÅ∫Åπ ˇˇˇˇˇˇÅ∑ÅπˇˇˇˇˇˇˇÅπ
  1571. —ˇÅÅî
  1572. —ˇÅÅî
  1573. —ˇÅÅî—ˇÅÅ´˝ˇÓ—ˇÅÅ´˙ˇÒ
  1574. —ŎŎ£ˇÒ—ˇÅÅ´¸ˇÔ—ˇÅÅ´ˇˇÏ
  1575. —ˇÅÅî
  1576. —ˇÅÅî
  1577. —ˇÅÅî
  1578. —ˇÅÅîÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ ˛ÅˇÅˇÅˇÍˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ü˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ü˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ+$++$++$+ˇˇ$++$++$+ˇˇ++$++$++$++$++$++ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝û˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%3+%+%+%+%+%+%+%+%+%+%+%+%ˇ+ˇ˛ˇ˛ˇˇˇˇˇˇˇ˛ˇ+ˇˇ˛ˇ +%ˇˇˇˇ˛ˇ+ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%2+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$˛+ˇ$ˇˇ$ˇ$ˇ˛+ˇ$ˇ$$˛ˇ$$˛ˇ$ˇ+ˇˇˇ$$+ˇ$ˇˇ$ˇˇ$ˇ$ˇ+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ö˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+.+$++$++$++$++$++$++$++$++$++$++$++$+˚ˇ/$+ˇˇ$+ˇ+ˇˇˇ$+ˇˇ+ˇ+$ˇˇ+ˇ+ˇˇ+ˇ+$+ˇ$+ˇ$+ˇˇ$+ˇ+˝ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++-$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ%ˇˇˇˇˇ%ˇˇ+ˇˇˇˇ%ˇˇ%ˇ+ˇˇˇ%+ˇˇˇˇˇˇ%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝û˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$D+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$ˇ˛ˇˇ$˛ˇˇ$ˇˇ$ˇˇ$˛ˇ+ˇˇ+ˇˇˇ$ˇ+$$ˇˇ$ˇˇ$˛ˇ+ˇˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$2+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ù˛ˇ+$$+$$+$$+$$+$$+$$ˇ˝ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$y+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝õ˛ˇ+$++$++$++$++$++ˇ˚ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+x+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ô˛ˇ+%+%+%+%+%+ˇ˘ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%w+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ó˛ˇ$+$$+$$+$$+$$+$ˇ˜ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+v$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ï˛ˇ$++$++$++$++$+ˇıˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++u$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ì˛ˇ+%+%+%+%ˇÛˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%t+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ë˛ˇ+$$+$$+$$+$$+ˇÒˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$s$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝è˛ˇ+$++$++$++$+ˇÔˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$r++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ç˛ˇ+%+%+%+%ˇÌˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%q+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ã˛ˇ$+$$+$$+$$ˇÎˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$p+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝â˛ˇ$++$++$++$ˇÈˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+o+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝òÅû@ÄùHHgà#/IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1579. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@Äùv6∂”'Ს+%+%+%ˇÁˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+n%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝Ö˛ ˇ+$$+$$+$$ˇÂˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$Z+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$˛ˇ$+$$+$$+$$+ˇ˝Ñ˛ ˇ+$++$++ˇÒ¯ˇ¸ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+Y+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$˚ˇ +$++$++$+ˇ˝b˛ ˇ+%+%+%ˇÚ˛ˇ¸˛ˇ¸2ˇ+%+%+%+%+%+%+%+%+%+%+%+%+ŎŎ‘ˇ +%+%+ˇ˝|˛ ˇ$+$$+$$+ˇÙ˛ˇ˙˛ˇ˝Ùˇ"$$+$$+$$+$$+$$+$$+$$+$$+$$˝ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$$+$$+$$+$$+$$+ˇˇ+$$+$$+$$+$$+˚ˇ +$$+$$+$$ˇ˝ê˛ˇ$++$++$++ˇıˇˇ˛ˇ¸˛ˇˇ+$++$++$+˝ˇ+$++$++$++$++$++$++$++$ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+H+$++$++$++$++$++$++$++$++$++$++$++$++$+ˇˇ++$++$++$++$+˛ˇ+$++$++$++$ˇ˝í˛ˇ+%+%+%ˇ˘˚ˇ˛ˇ¸ˇˇ˛ˇ%+%+%+%ˇˇ%+%+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+B%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%˛ˇ$+%+%+%+%+%+%+%+%+%ˇ˝ë˛ˇ+$$+$$+$$+$ˇ˙˝ˇˇ˛¸ˇ˝˛ˇ+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$ˇˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$B+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$˝ˇ#$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝è˛ˇ+$++$++$++$ˇ˚˝ˇ¯ˇ˝˛ˇ++$++$++$++ˇˇ+$++$++$++$++$++$++ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$B++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++˝ˇ#$++$++$++$++$++$++$++$++$+ˇ˝ã˛ˇ+%+%+%+%ˇ˙˛ˇÙ˛ˇ+%+%+%+%ˇ+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%A+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+¸ˇ#+%+%+%+%+%+%+%+%+ˇ˝å˛ˇ$+$$+$$+$$+$$ˇ˙¸ˇ˜˛ˇ$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+A$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$¸ˇ#+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝è˛ˇ$++$++$++$++$+ˇ˘˛ˇ˜˛ˇ+$++$++$++$+ˇ$++$++$++$++$++$++$ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+j+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$ˇ˝ê˛ˇ+%+%+%+%+ˇ˜˙ˇ˛˛ˇ%+%+%+%+ˇ+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+j%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%ˇ˝ë˛ˇ+$$+$$+$$+$$+$$ˇı˝ˇ˛˛ˇ+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$j+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝È˛ˇ+$++$++$++$++$+ˇ˜ˇ+$++$˝ˇ<++$++$++$++$ˇ+$++$++$++$++$++$+ˇ$++$++$++$++$+≈ˇ    +$++$++≈ˇ$++$++$≈ˇf++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$+ˇ˝Ú˛ˇ+%+%+%+%+%+%ˇ˘Iˇ+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+ˇ+%+%+%+%ˇ« ˇ+%+%+%ˇ«
  1580. ˇ+%+%ˇ«gˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+ˇ˝Ù˛ˇ$+$$+$$+$$+$$+$$+ˇ˚Jˇ$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$ˇ« ˇ$+$$+$$ˇ«
  1581. ˇ+$$+$$+ˇ«gˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ˆ˛ˇ$++$++$++$++$++$++ˇ˝Kˇ+$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$ˇ+$++$++$++$++ˇ« ˇ$++$++$+ˇ«
  1582. ˇ+$++$+ˇ«gˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$ˇ˝˜˛iˇ+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%ˇ+%+%+%+%+%ˇ« ˇ+%+%ˇ«
  1583. ˇ+%+%+ˇ«gˇ%+%+%+ˇ+ˇ+%ˇˇˇˇ+%+%ˇˇ+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%ˇ˝¯˛iˇ+$$+$$+$$+$$+$$+$$+$ˇˇ+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$ˇ« ˇ+$$+$$+$ˇ« ˇ$+$$+$$ˇˇ»gˇˇ+$$+$$+$$˛ˇ$$˛+ˇˇ+ˇˇ˛+ˇˇ˛+$ˇ˛+$ˇ˛+ˇˇ˛+$ˇ˛+$ˇ˛ˇ$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ ˛iˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$+ˇ$++$++$++$++$+ˇ˜˛ˇˇ˚ˇˇÔ ˇ+$++$++ˇ¯˛ˇÔˇ˚ˇˇÓ ˇ$++$++$+ˇ¯˛ˇˇ˚ˇˇÓfˇ+$++$++$ˇˇ$ˇˇ+$ˇ+ˇˇ+ˇˇˇ$+ˇ+$ˇˇ+ˇˇˇ$+ˇ+ˇ+ˇ+$++$++$++$ˇ+$++$++$++$++$++$++$++$++$+ˇ˝l˛iˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+ˇ+%+%+%+%ˇ¯ˇ˛ˇˇˇ¸ˇ˛ˇˇˇˇˇˇˇˇˇ˛ˇ˜ ˇ+%+%+%ˇ˘ˇ˛ˇˇˇ¸ˇ˛ˇˇˇˇ˛ˇˇˇ˛ˇˆ ˇ+%+%ˇ˘ˇ˛ˇˇˇ¸ˇ˛ˇˇˇˇˇˇˇˇˇ˛ˇˆfˇ+%+%+%ˇ+ˇˇˇ%ˇ+%ˇˇ+%ˇˇ+ˇ+ˇˇˇ%ˇˇ+ˇˇ%ˇˇ%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+ˇ˝o˛iˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$ˇ¯ˇ¸ ˇˇˇˇˇˇˇˇ˛ˇˇˇ˛ˇˇˇ˜ ˇ$+$$+$$ˇ˘ˇ¸ ˛ˇˇˇˇˇˇ˛ˇˇˇ˛ˇˇˇ˛ˆ ˇ+$$+$$+$ˇ˘˛¸ ˇˇˇ˛ˇˇ˛ˇˇˇ˛ˇˇˇ˛ˇˆˇ$+$$+$$+ˇ$˛ˇT+ˇ$ˇˇ$ˇˇ$˛+$ˇ˛+$ˇˇˇ$˛+$ˇˇ$ˇ+$$+$$+$$ˇˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝l˛iˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$ˇ+$++$++$++$++ˇ¯ˇ¸ˇˇˇˇˇˇˇˇ˝ˇ ˇˇˇˇˇˇ˜ ˇ$++$++$+ˇ˘ˇ¸ˇˇˇˇˇˇˇˇ˝ˇ
  1584. ˇˇˇˇˇˇˆ ˇ+$++$++ˇ˘ˇ¸ˇˇˇˇˇˇˇˇ˝ˇ ˇˇˇˇˇˇˆ"ˇ$++$++$+ˇ$+ˇ$ˇˇ+$+ˇˇ$+ˇˇ$+ˇˇ$+˛ˇ@+ˇˇ$+ˇˇ$+ˇ+ˇ++$++$++$ˇˇ+$++$++$++$++$++$++$++$++$++$ˇ˝r˛iˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%ˇ+%+%+%+%+%ˇ¯ˇ˛ˇˇˇˇˇˇˇˇˇˇ˝
  1585. ˇˇˇˇˇˇ˜ ˇ+%+%ˇ˘ˇ˛ˇˇˇˇˇˇˇˇˇˇ˝    ˇˇˇˇˇˇˆ ˇ+%+%+%ˇ˘ˇ˛ˇˇˇˇˇˇˇˇˇˇ˝
  1586. ˇˇˇˇˇˇˆfˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇˇ+%+%+%+%+%+%+%+%+%+%ˇ˝n˛iˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$ˇ˜˛ˇˇ˛ˇˇˇˇˇ˛ˇˇ˛ˇ˛ˇˇˇ˛ˇˇ˜ ˇ+$$+$$+$ˇ¯˛ˇ˛    ˇ˛ˇˇˇ˛ˇˇˇˇˇˇˇˇ˛ˇˆ ˇ$+$$+$$ˇ¯ˇ˛ˇ˛ˇˇ˛ˇ˛ˇ˛ˇˇˇˇˇ˛ˇˇˇ˛ˆ8ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$¸ˇ($$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝À˛iˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$+ˇ$++$++$++$++$+ˇÁˇ‚ ˇ+$++$++ˇËˇ· ˇ$++$++$+ˇËˇ·«ˇ,+$++$++$++$++$++$++$++$++$++$++$+ˇ˝˛iˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+ˇ+%+%+%+%ˇÁˇ‚ ˇ+%+%+%ˇËˇ· ˇ+%+%ˇËˇ·fˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝˜˛iˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$ˇ« ˇ$+$$+$$ˇ« ˇ+$$+$$+$ˇ«fˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝˛iˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$ˇ+$++$++$++$++ˇÊˇˇÚˇÙ ˇ$++$++$+ˇÁˇˇˆ˛ˇÚ ˇ+$++$++ˇÁˇˇÙ˛ˇÛfˇ$++$++$++ˇ++$++$++$++$++$+ˇ$++$+ˇˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝V˛iˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%ˇ+%+%+%+%+%ˇÛ ˇˇˇˇˇˇ˛ˇ˛ˇˇˇ˚ˇˇı ˇ+%+%ˇÛˇˇˇˇˇˇˇˇ˝ˇ˛ˇˇ˛ˇˇÛ ˇ+%+%+%ˇÙ ˇˇˇˇˇˇ˛ˇ˛ˇˇˇ˝ˇ˛ˇÙˇ+%+%ˇˇ+ˇˇ+%ˇˇ+%ˇˇ+%¸ˇ+˛ˇ+ˇˇˇ˛ˇˇˇ˛ˇ0+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝X˛iˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$ˇÛ    ˛ˇˇˇˇ˛
  1587. ˇˇ˛ˇ˛ˇ¸ˇˇı ˇ+$$+$$+$ˇÛˇ˛ˇˇˇˇ˛ˇˇˇˇ˛ˇÛ ˇ$+$$+$$ˇÙ    ˇˇˇˇ˛˛
  1588. ˛ˇˇˇˇˇ˛ˇfˇ+$$+$$˛+$ˇˇ$$˛+$ˇ˛+$ˇˇ$ˇˇ$$˛+$ˇ˛+ˇ$ˇ$ˇ˛+ˇ$ˇ$ˇˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝N˛iˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$+ˇ$++$++$++$++$+ˇÛ    ˇˇˇˇˇ˛ˇˇˇˇ˝ˇ˝¸ˇˆ ˇ+$++$++ˇÛˇˇˇˇˇˇˇˇˇ˝ˇ˛ˇÚ ˇ$++$++$+ˇÙ    ˇˇˇˇˇ˛ˇˇˇˇ˝ˇ˛ˇ%ˇ+$++$ˇ+ˇ+ˇ+$ˇ+$ˇ+ˇ+ˇ+ˇ+ˇ+$ˇ+ˇˇ˝ˇ<+ˇˇˇ$+ˇ+ˇ+ˇ+$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝V˛iˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+ˇ+%+%+%+%ˇÛ    ˇˇˇˇˇ˛ˇˇˇˇˇ˙ˇ˛ˇˆ ˇ+%+%+%ˇÛˇˇˇˇˇˇˇˇˇˇ¸ˇˇÛ ˇ+%+%ˇÙ    ˇˇˇˇˇ˛ˇˇˇˇˇ˚ˇ˛ˇÙfˇ+%+%ˇ+%ˇˇ%ˇ+%ˇˇ+%ˇˇ%ˇˇ%ˇ+%ˇˇ+ˇ+%ˇˇ+ˇˇ%ˇˇ%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝W˛iˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$ˇÛˇ˛ˇˇ˛ˇ˛    ˇ˛ˇ˛ˇ˛¸ˇ˛ˇˆ ˇ$+$$+$$ˇÛ˛ˇ˛ˇ˛ˇ˛ˇˇˇ˛ˇˇ˛ˇˇ˛ˇÛ ˇ+$$+$$+$ˇÙˇ˛ˇˇ˛ˇˇ˛    ˇˇˇˇˇˇ¸˛ˇÛfˇ$+$$+$ˇ˛+$ˇ+$ˇ˛+$ˇ˛+$ˇˇ$ˇ+ˇˇ˛+ˇ$ˇˇ$ˇˇ$ˇˇ$ˇ$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝˜˛iˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$ˇ+$++$++$++$++ˇ« ˇ$++$++$+ˇ« ˇ+$++$++ˇ«fˇ$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝˜˛iˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%ˇ+%+%+%+%+%ˇ« ˇ+%+%ˇ« ˇ+%+%+%ˇ«fˇ+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝˜˛iˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$ˇ« ˇ+$$+$$+$ˇ« ˇ$+$$+$$ˇ«fˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝˜˛iˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$+ˇ$++$++$++$++$+ˇ« ˇ+$++$++ˇ« ˇ$++$++$+ˇ«fˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝Ò˛hˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+ˇ+%+%+%+%≈ˇ    +%+%+%≈ˇ    +%+%≈ˇe+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇ$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+ˇˇ+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$+ˇˇ$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$+ˇˇ++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝û˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇˇ+?%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+˛ˇ+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%S+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ö˛yˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+˝ˇ@$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$˝ˇA$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$˝ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ö˛yˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$+˝ˇ@+$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++˝ˇA$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$+˝ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ô˛yˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+˝ˇ@%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%¸ˇ@+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%˝ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ï˛xˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$˚ˇ?+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$¸ˇ?$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+˚ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ +$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++ˇ++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ü˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++ˇ++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%ˇ%+%+%+%+%+%+%+%+ˇ+%+%+%+%+%+%+%+%+%ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$+ˇ$++$++$++$++$++$++$++$++$++ˇ++$++$++$++$++$++$++$++$ˇ+$++$++$++$++$++$++$++$++$+ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ ˛ÅˇÅˇÅˇÍˇ˝ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓòÅûÄ¿ùHHgå#0IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1589. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêêÄ¿ù∂6ˆ”' ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ$ ˚ˇˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ&»ˇˇˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ&»ˇˇˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ&»ˇˇˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ( ˇˇ˛ˇˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ&…ˇ˛ˇ˝ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ( ˇˇˇ˛ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ( ˇˇˇ˛ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ%»ˇˇ˝ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ$…˛ˇ˝ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ( ˇ˛ˇ˛ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓB ˇ˛ˇ˛ˇËˇ‹ˇ˝ˇ˛˛ˇ˛Ïˇ›ˇ˝˛˛ˇ˛ˇÎˇ›ˇ˝ˇˇ˛˛ˇÅ¯9Ã˙ˇ˛ˇËˇ‹ˇ˚ˇˇÏˇ›ˇ˚ˇˇÎˇ›ˇ˚ˇˇÅ¯5¬ˇËˇ‹ˇ˚ˇˇÏˇ›ˇ˚ˇˇÎˇ›ˇ˚ˇˇÅ¯N ˛˛ˇ˛˛ˇËˇ‹ˇ˚ˇˇÏˇ˝˛ˇ˛ˇˇÁˇ˚˛ˇÎˇ˝ˇ˛˛ˇ˛Áˇ˚ˇˇÅ¯F ˇ˙ˇËˇ‹ˇ˝ˇˇ˛ˇÏˇ˚ˇˇÁˇ˝ˇˇ˛ˇÎˇ˚ˇˇÁˇ˝˚ˇÅ¯B ¸ˇ˛ˇËˇ‹ˇ¸˛ˇÍˇ˚ˇˇÁˇ¸˛ˇÈˇ˚ˇˇÁˇ˝ˇˇˇÅ˜F¬ˇËˇ‹ˇ˝ˇˇˇÎˇ˚ˇ˛Áˇ˝˛ˇ˛Íˇ˚ˇˇÁˇ˝ˇ˛ˇÅ˜E…˛ˇ˝ˇËˇ‹ˇ˝ˇˇˇÎˇ˝˚ˇÁˇ˝ˇˇˇÍˇ˝ˇˇ˛ˇÁˇ˚ˇˇÅˆB ˇˇˇ˛ˇÓ˝ˇˇ‹ˇ˚ˇˇÍˇ˝ˇˇˇÊˇ˚ˇˇÈˇ¸˛ˇÂˇÅÓJ ˛ˇ˛˛ˇÔˇ˝˛ˇ‹ˇ˙˛Íˇ˝ˇˇˇÊˇ˙ˇÈˇ˝ˇˇˇÊˇ˙ˇÅˆP»ˇˇ˝ˇÔˇ˝ˇˇ‹ˇ˝ˇˇˇÎˇ˚ˇˇÂˇ˝ˇˇˇÍˇ˝ˇˇˇÊˇ˝ˇˇˇÅ˜7¬ˇÔˇ˝ˇˇ‹ˇ¸ˇËˇ›ˇ¸ˇÁˇ˚ˇˇÂˇ¸ˇÅÙ0«ˇ˝ˇÓˇˇˇ‹ˇ‚ˇ¸˛ˇˇÂˇ·ˇ›ˇÅÓD ˇˇˇ˛ˇÓ˛ˇ˛ˇ‹ˇ˙ˇÎˇ˝ˇ˛ˇÊˇ˙ˇÍˇ¸˛ˇÂˇ˙ˇÅ˜S…ˇ˚ˇÔˇ˛ˇˇ‹ˇ˝ˇ˛ˇÎˇ˝ˇ˛ˇÊˇ˝ˇ˛ˇÍˇ˝ˇ˛ˇÊˇ˝ˇ˛ˇÅ˜P¬ˇÔˇ˛ˇˇ‹ˇ˝ˇ˛ˇÎˇˇ˛˛ˇ˛ˇÊˇ˝ˇ˛ˇÍˇ˝ˇ˛ˇÊˇ˝˛˛˛Å˜<Δˇ˛ˇÓ˛ˇ˛ˇ‹ˇ¸˛ˇÍˇ˝¸ˇÊˇ¸˛ˇÈˇ˙ˇÊˇ¸˛ˇÅˆ4 ˚ˇˇËˇ‹ˇ¸˛ˇÍˇ˝ˇ‚ˇ·ˇ˝¸ˇÊˇ¸˛ˇÅˆE¬ˇÔ˛ˇ˛ˇˇ‹ˇ˝ˇ˛ˇÎˇ˝ˇ˛˛ˇÊˇ¸˛ˇÈˇ˝ˇ‚ˇ˝ˇ˛ˇÅ˜?¬ˇÎˇˇ‹ˇ˝ˇ˛ˇÎˇ›ˇ˝ˇ˛ˇÍˇ˝¸ˇÊˇ˝ˇ˛ˇÅ˜4¬ˇÔ¸ˇˇ‹ˇ¸˛ˇÍˇ›ˇ˝ˇ˛ˇÍˇ›ˇ¸˛ˇÅˆ8 ˛ˇˇ¸ˇËˇ‹ˇ‚ˇ¸ˇˇ˛Âˇ¸ˇ˛ˇÈˇ¸˛ˇˇÂˇÅÓC»˛ˇ˛ˇÎˇˇ‹ˇ˝¸ˇÎˇ˝ˇˇˇÊˇ˝¸ˇÍˇ˝ˇˇˇÊˇ˝¸ˇÅ˜E»ˇˇˇÔ˚ˇˇ‹ˇ˘ˇÎˇ˝ˇˇˇÊˇ˘ˇÍˇ˝ˇˇˇÊˇ˘ˇÅ˜G»˛ˇˇ˛ˇËˇ‹ˇ˝ˇ˛˛ˇÎˇ˚ˇˇÂˇ˝˛˛ˇ˛Íˇ˚ˇ˛Âˇ˝ˇˇ˛ˇˇÅ˜, ˛ˇ¸ˇÔ¸ˇˇ‹ˇ‚ˇ˙ˇÂˇ·ˇ›ˇÅÓ; ˛ˇ¸ˇÎˇˇ‹ˇ˙ˇÍˇ˝ˇˇˇÊˇ·ˇ˙ˇÂˇ˙ˇÅˆK«ˇ˛ˇˇÓ˛ˇˇ˛ˇ‹ˇ˝ˇˇˇÎˇ¸ˇ„ˇ˙ˇÈˇ˝ˇˇˇÊˇ˝˛ˇ˛Å˜?…˝ˇ˛ˇÔˇ˛ˇˇ‹ˇ¸ˇËˇ›ˇ˝ˇˇˇÍˇ¸ˇ„ˇ¸ˇÅÙ6 ˇ˝ˇˇÔˇ˛ˇˇ‹ˇ‚ˇ˘ˇÊˇ¸ˇÁˇ›ˇÅÓF ˇ˝ˇˇÓˇˇ˛˛ˇ‹ˇ¸˛ˇˇÍˇ˝ˇ˛˛ˇ˛Áˇ·ˇ˘ˇÊˇ¸ˇ˛ˇÅˆ? ˇ˝ˇˇËˇ‹ˇ˝ˇˇˇÎˇ›ˇ¸˛ˇÈˇ˝˚ˇÁˇ˝ˇˇˇÅ˜B…ˇˇ˛ˇÔ˚ˇˇ‹ˇ˝ˇˇˇÎˇ›ˇ˝ˇˇˇÍˇ›ˇ˝ˇˇˇÅ˜6…˛ˇ˝ˇËˇ‹ˇ˚ˇ˛Íˇ›ˇ˝ˇ˛ˇÍˇ›ˇ˚ˇˇÅˆ5 ˇ˛ˇ˛ˇËˇ‹ˇ‚ˇ˝˚ˇÁˇ˚ˇˇÈˇ¸˝ˇÊˇÅÓ9 ˇ˛ˇ˛ˇËˇ‹ˇ‚ˇ˝ˇˇˇÁˇ·ˇ˝ˇ˝ˇÁˇÅÓ7…ˇ˛ˇ˝ˇËˇ‹ˇ‚ˇ˝ˇˇ˛Áˇ·ˇ˝ˇ˝ˇÁˇÅÓ8¬ˇËˇ‹ˇ‚ˇ˝ˇˇˇˇÊˇ˝˚ˇÎˇ˝ˇ˝ˇÁˇ¸˝ˇÅ˜@ ¸ˇ˛ˇËˇ‹ˇ˝˛ˇÈˇ›ˇ˝ˇˇˇÎˇ¸ˇˇÊˇ˝ˇ˝ˇÅ¯;Δ˛˛ˇËˇ‹ˇ˚ˇ˛ˇÎˇ›ˇ˝ˇ˛ˇÎˇ›ˇ˝˛˝ˇÅ¯; ¸ˇ˛ˇËˇ‹ˇ˚ˇˇÏˇ›ˇ˝ˇˇˇˇÍˇ›ˇ˝ˇ˝ˇÅ¯+¬ˇËˇ‹ˇ˚˛ˇÎˇ›ˇ·ˇ›ˇ¸ˇˇÅ˜*Δˇ˛ˇËˇ‹ˇ˝ˇ˛ˇÈˇ›ˇ·ˇ›ˇÅÓ$ ˚ˇˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ( ˛˛ˇ˛˛ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ$Δˇ˛ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ$…˛ˇ˝ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ( ˇ˛ˇ˛ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ( ˇ˛ˇ˛ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ$…˛ˇ˝ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓò4@ù@ùˆ66”˚˘˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙˛@˛˛˝˛˝ Ô˙‡@˛˛¿˛˛˝ Ô˙¿@˛˛¿˛˛˝ Ô˙¿@˛˛IJ˛˝ Ô˙¿@˛˛IJ˛˝ Ô˙Ä@˛˛IJ˛˝ Ô˙Ä@˛˛˝˛ ˝ Ô˙Ä@˛˛˝˛ ˝ Ôœˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿œˇ¿ÕÕÕÕÕÕÕÕÕÕÕÕÕÕò4@Äù@Äù66v”ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕò4Ä¿ùÄ¿ùv6∂”ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕòÅû@ùHHgà#1IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1590. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@ùˆ66”'$ ˚ˇˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ¬ˇËˇ‹ˇ‚ˇ›ˇ·ˇ›ˇÅÓ ƒ˚ˇÎˇ‹ˇÂ˚ˇflˇ„¸ˇflˇÅÓ ƒ¸ˇÍˇ‹ˇ‰¸ˇflˇ„¸ˇflˇÅÓ √˝ˇÍˇ‹ˇ‰˝ˇfiˇ„˝ˇfiˇÅÓ √˝ˇÍˇ‹ˇ‰˝ˇfiˇ„˝ˇfiˇÅÓ √˛ˇÈˇ‹ˇ„˛ˇfiˇ‚˛ˇfiˇÅÓ#¬ˇˇÈˇ‹ˇ„ˇˇ›ˇ‚ˇˇ›ˇÅÓ#¬ˇˇÈˇ‹ˇ„ˇˇ›ˇ‚ˇˇ›ˇÅÓ ˛ÅˇÅˇÅˇÍˇ˝ü˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ü˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝û˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$,+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$˛ˇ˛+$$+$$+$$+$$+$$˛ˇ$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$f+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ú˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$2++$++$++$++$++$++$++$++$++$++$++$ˇ+$+ˇ+˛ˇ +$ˇˇ+$ˇˇ+ˇˇ+˛ˇ+˛ˇ+$˛ˇ$++ˇ+ˇ$+ˇˇ+ˇˇ+ˇˇ$¸ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+-+$++$++$++$++$++$++$++$++$++$++$+ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ+%ˇ%ˇ+ˇˇ+ˇˇ+%ˇˇ%ˇˇ%ˇˇ%ˇ+ˇ+ˇ+%ˇˇˇ+%ˇˇ+%ˇˇ+ˇˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝û˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+6$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ$+$ˇˇ$$˛˛ˇ$˛+ˇ$˛ˇ$ˇ+ˇˇˇ$ˇˇ$$˛+$$ˇ$$ˇ$ˇˇ$$˛ˇ˛ˇˇ$˛+ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$4+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ$++ˇ+ˇ+$ˇˇ+$+ˇ$ˇ+ˇ+ˇˇ+ˇ+ˇ+ˇ+$ˇ+$+ˇ$+ˇ+ˇ+ˇ$+ˇˇ$+ˇ$ˇˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ù˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+,%+%+%+%+%+%+%+%+%+%+%+%˝ˇ˛ˇ+ˇˇ+ˇ˛ˇ    +ˇˇˇ%ˇ+˛ˇ+%ˇ%+ˇˇ%ˇ%ˇˇ+ˇˇ+ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%G+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ü˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$ˇ+$$+$$+$$+$$+$$+$$+ˇ$+$$+$$˛+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++ˇ++$++$++$++$++$++$ˇˇ+$++$++ˇˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ü˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+ˇ˝ü˛ˇ$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ˇ˝ü˛ˇ$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$ˇ˝ü˛ˇ+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%+%ˇ˝ü˛ˇ+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+ˇ˝ü˛ˇ+$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$++$+ˇ˝ ˛ÅˇÅˇÅˇÍˇ˝ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„òÅû@ÄùHHgå#2IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1591. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@Äù66v”'ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„òÅûÄ¿ùHHgà#3IJˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1592. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêêÄ¿ùv6∂”'ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„ÅÅÅ„
  1593. <°d
  1594. ONLNf§
  1595. 66*”<°d
  1596. ONLNf¥,     Helvetica.ÙùÙù+66 °d
  1597. ONLNf∑~
  1598. d    .°dONLNd#.@(J6Figure 2°dONLNd    /:L* Call Chaining, Palatino
  1599. °dONLNdLXn*KYou can extend a parameter block by attaching your own data to the end of a°dONLNdcXdí* parameter block, like this:,
  1600. Courier    °dONLNdq|,*TYPE°dONLNdÖ}&àî+ myPBRecPtr = ^myPBRec;°dONLNdùâ&îv* myPBRec = RECORD°dONLNd±ïC†R+ pb:°dONLNd∂ïo†µ),ParamBlockRec;°dONLNd»°C¨f(»amyData:°dONLNd–°o¨¶), myDataType;°dONLNd‹°∑¨k)H${ Put any data type you want here. }°dONLNd≠5∏I(‘SEND;
  1601. °dONLNdƒ–I(Ï6DFrom within a completion routine, using the extended fields is easy:    °dONLNdM›ˇ*(IF thePBRecPtr^.pb.ioResult = noErr THEN°dONLNdwÈ&Ù–+ "thePBRecPtr^.myData := kSomeValue;
  1602. °dONLNdö Ñ((6OExtending a parameter block has several benefits for asynchronous program code:°dONLNdÍ+1+•°dONLNdÏ7U) ?By extending a parameter block to include all variables used by°dONLNd,7*F* =the routine, you can reduce the amount of stack space used by°dONLNdj*76í* completion routines. x4x&,Times ({) +
  1603. 19(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1604. March 1993ˇ†æ†¬°¿/, 128 string def°¿5{currentfile , readstring {(,,,,,,,,,,,,,,,,) search°¿K{pop pop pop {currentfile read {46 eq {exit} if} {exit} ifelse} loop exit}°¿+{pop} ifelse} {pop exit} ifelse} bind loop†ø†æ†¬°¿í,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.†ø†æ†¬°¿+%%BeginDocument: Adobe Illustrator(TM) 3.2°¿%!PS-Adobe-3.0 °¿    EPSF-3.0°¿%%%Creator: Adobe Illustrator(TM) 3.2°¿%%For: (Karen Brady) (Mine)°¿#%%CreationDate: (1/4/93) (5:09 PM)°¿%%BoundingBox: 100 273 513 517°¿'%%DocumentProcessColors: Magenta Black°¿%%DocumentFonts: Helvetica°¿=%%DocumentSuppliedResources: procset Adobe_packedarray 2.0 0°¿"%%+ procset Adobe_cmykcolor 1.1 0°¿%%+ procset Adobe_cshow 1.1 0°¿$%%+ procset Adobe_customcolor 1.0 0°¿'%%+ procset Adobe_typography_AI3 1.0 1°¿)%%+ procset Adobe_IllustratorA_AI3 1.0 1°¿%AI3_ColorUsage: Color°¿)%%DocumentCustomColors: (PANTONE 322 CV)°¿3%%CMYKCustomColor: 1 0 0.38 0.305 (PANTONE 322 CV)°¿%AI3_Cropmarks: 82 243 532 528°¿"%AI3_TemplateBox: 306 396 306 396°¿%AI3_TileBox: 30 31 582 761°¿$%AI3_DocumentPreview: Macintosh_Pic°¿%%EndComments°¿%%BeginProlog†ø†æ†¬°¿1%%BeginResource: procset Adobe_packedarray 2.0 0°¿"%%Title: (Packed Array Operators)°¿%%Version: 2.0 °¿%%CreationDate: (8/2/90) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿1userdict /Adobe_packedarray 5 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/packedarray where°¿    {°¿    pop°¿    }°¿    {°¿    Adobe_packedarray begin°¿    Adobe_packedarray°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿        userdict 3 1 roll put°¿         } forall°¿    end°¿
  1605.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿} def°¿2/packedarray        % arguments count packedarray array°¿{°¿array astore readonly°¿} def°¿%/setpacking            % boolean setpacking -°¿{°¿pop°¿} def°¿(/currentpacking        % - setpacking boolean°¿{°¿false°¿} def°¿currentdict readonly pop end°¿%%EndResource°¿'Adobe_packedarray /initialize get exec°¿/%%BeginResource: procset Adobe_cmykcolor 1.1 0°¿ %%Title: (CMYK Color Operators)°¿%%Version: 1.1 °¿%%CreationDate: (1/23/89) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿/userdict /Adobe_cmykcolor 4 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/setcmykcolor where°¿    {°¿    pop°¿    }°¿    {°¿5    userdict /Adobe_cmykcolor_vars 2 dict dup begin put°¿    /_setrgbcolor°¿        /setrgbcolor load def°¿    /_currentrgbcolor°¿        /currentrgbcolor load def°¿    Adobe_cmykcolor begin°¿    Adobe_cmykcolor°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿
  1606.         pop pop°¿         } forall°¿    end°¿    end°¿    Adobe_cmykcolor begin°¿
  1607.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿currentdict Adobe_cmykcolor eq°¿    {°¿    end°¿    } if°¿} def°¿:/setcmykcolor        % cyan magenta yellow black setcmykcolor -°¿{°¿1 sub 4 1 roll°¿3°¿    {°¿    3 index add neg dup 0 lt°¿        {°¿        pop 0°¿        } if°¿
  1608.     3 1 roll°¿
  1609.     } repeat°¿,Adobe_cmykcolor_vars /_setrgbcolor get exec°¿pop°¿} def °¿A/currentcmykcolor    % - currentcmykcolor cyan magenta yellow black°¿{°¿0Adobe_cmykcolor_vars /_currentrgbcolor get exec°¿3°¿    {°¿    1 sub neg 3 1 roll°¿
  1610.     } repeat°¿0°¿} def°¿currentdict readonly pop end°¿ setpacking°¿%%EndResource°¿+%%BeginResource: procset Adobe_cshow 1.1 0°¿%%Title: (cshow Operator)°¿%%Version: 1.1 °¿%%CreationDate: (1/23/89) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿+userdict /Adobe_cshow 3 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/cshow where°¿    {°¿    pop°¿    }°¿    {°¿1    userdict /Adobe_cshow_vars 1 dict dup begin put°¿    /_cshow        % - _cshow proc°¿            {} def°¿    Adobe_cshow begin°¿    Adobe_cshow°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿        userdict 3 1 roll put°¿         } forall°¿    end°¿    end°¿
  1611.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿} def°¿ /cshow                % proc string cshow -°¿{°¿exch°¿Adobe_cshow_vars°¿    exch /_cshow°¿
  1612.     exch put°¿    {°¿'    0 0 Adobe_cshow_vars /_cshow get exec°¿
  1613.     } forall°¿} def°¿currentdict readonly pop end°¿ setpacking°¿%%EndResource°¿1%%BeginResource: procset Adobe_customcolor 1.0 0°¿"%%Title: (Custom Color Operators)°¿%%Version: 1.0 °¿%%CreationDate: (5/9/88) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿1userdict /Adobe_customcolor 5 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/setcustomcolor where°¿    {°¿    pop°¿    }°¿    {°¿    Adobe_customcolor begin°¿    Adobe_customcolor°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿
  1614.         pop pop°¿         } forall°¿    end°¿    Adobe_customcolor begin°¿
  1615.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿!currentdict Adobe_customcolor eq°¿    {°¿    end°¿    } if°¿} def°¿Q/findcmykcustomcolor    % cyan magenta yellow black name findcmykcustomcolor object°¿{°¿5 packedarray°¿}  def°¿0/setcustomcolor        % object tint setcustomcolor -°¿{°¿exch°¿aload pop pop°¿4°¿    {°¿    4 index mul 4 1 roll°¿
  1616.     } repeat°¿5 -1 roll pop°¿setcmykcolor°¿} def°¿(/setoverprint        % boolean setoverprint -°¿{°¿pop°¿} def°¿currentdict readonly pop end°¿ setpacking°¿%%EndResource°¿4%%BeginResource: procset Adobe_typography_AI3 1.1 0°¿ %%Title: (Typography Operators)°¿%%Version: 1.0 °¿%%CreationDate:(5/31/90) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿5userdict /Adobe_typography_AI3 47 dict dup begin put°¿/initialize            % - initialize -°¿{°¿/TZ°¿ where°¿    {°¿    pop°¿    }°¿    {°¿    Adobe_typography_AI3 begin°¿    Adobe_typography_AI3°¿        {°¿        dup xcheck°¿            {°¿            bind°¿            } if°¿
  1617.         pop pop°¿         } forall°¿    end°¿    Adobe_typography_AI3 begin°¿
  1618.     } ifelse°¿} def°¿/terminate            % - terminate -°¿{°¿$currentdict Adobe_typography_AI3 eq°¿    {°¿    end°¿    } if°¿} def°¿b% [ number value stream [ array for encoding modification ] modifyEncoding ==> [ modified array ]°¿/modifyEncoding°¿{°¿    /_tempEncode exch ddef°¿    °¿$    % pointer for sequential encodings°¿    /_pntr 0 ddef°¿    °¿    {°¿        % get bottom object°¿        counttomark -1 roll°¿        % is it a mark ?°¿        dup type dup /marktype eq         °¿        {°¿
  1619.             % exit°¿            pop pop exit°¿        }°¿        {°¿            % ... object ... type ....°¿            % insert if a nametype°¿            /nametype eq°¿            {°¿5                % insert the name at _pntr and increment pointer°¿B                _tempEncode /_pntr dup load dup 3 1 roll 1 add ddef 3 -1 roll°¿                put°¿            }°¿            {°¿#                % reset _pntr if it's a number°¿                /_pntr exch ddef                    °¿            }°¿
  1620.             ifelse°¿        }°¿            ifelse°¿    }°¿    loop    °¿    °¿     % return the modified encoding°¿    _tempEncode°¿}°¿def°¿9/TE    % Set std platform encoding     % (encoding pairs) TE -°¿{°¿1    StandardEncoding 256 array copy modifyEncoding °¿    /_nativeEncoding exch def°¿} def°¿% re-define font°¿% expected arguments°¿% for 'normal fonts : °¿L% [ /_Helvetica-Bold/Helvetica-Bold direction fontScript defaultEncoding TZ°¿%°¿5% for cartographic, pictographic, and expert fonts :°¿1% [ ... number value stream ... /_Symbol/Symbol °¿*%    direction fontScript defaultEncoding TZ°¿*% for blended fonts w/ default encoding :°¿-% [ /_AdobeSans_20ULig1XCond-Bold/AdobeSans °¿;%    direction fontScript defaultEncoding [ w0 w1 ... wn ] TZ°¿*% for blended fonts w/ special encoding :°¿D% [ ... number value stream ... /_AdobeSans_20ULig1XCond/AdobeSans °¿;%    direction fontScript defaultEncoding [ w0 w1 ... wn ] TZ°¿/TZ        °¿{°¿"    % set weight vector (if present)°¿=    dup type /arraytype eq {/_wv exch def} {/_wv 0 def} ifelse °¿"    % platform dependent coding flag°¿    /_useNativeEncoding exch def°¿    % pop fontScript & direction°¿        pop pop°¿    °¿'    % create a new dictionary with length°¿+    % equal to original dictionary length + 2°¿+    % copy all the key/value pairs except FID°¿C    % call makeblended font with the weight values if _wv is an array°¿P    findfont _wv type /arraytype eq {_wv makeblendedfont} if dup length 2 add dict°¿    °¿    begin°¿    °¿$        % copy all the values but the FID°¿        % into the new dictionary°¿         mark exch°¿        {°¿/            1 index /FID ne { def } if cleartomark mark°¿        }°¿            forall°¿        % discard last mark°¿        pop°¿        °¿        % define FontName°¿        /FontName exch def°¿        °¿(        % if no re-encoding stream is present°¿1        % then if the base encoding vector of the font°¿$        % is the same as StandardEncoding°¿/        % and the use platform encoding flag is true°¿&        % then install AI platform encoding°¿+        % else leave the base encoding in effect°¿        counttomark 0 eq°¿        {°¿            1 _useNativeEncoding eq°¿            {°¿"                /Encoding _nativeEncoding def°¿            }°¿            if°¿            % clean up°¿            cleartomark°¿        }°¿        {    °¿             % custom encoding to be done°¿;            % start off with a copy of the font's standard encoding°¿"            /Encoding load 256 array copy °¿%            modifyEncoding /Encoding exch def°¿        }°¿         ifelse        °¿        FontName currentdict°¿    end°¿    °¿    % register the new font°¿    definefont pop°¿}°¿def°¿% text painting operators°¿"/tr                    % string tr ax ay string °¿{°¿_ax _ay 3 2 roll°¿} def°¿2/trj                % string trj cx cy fillchar ax ay string °¿{°¿_cx _cy _sp _ax _ay 6 5 roll°¿} def°¿/a0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿    dup °¿    currentpoint 3 2 roll°¿        tr _psf°¿    newpath moveto°¿    tr _ctm _pss°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿    dup°¿    currentpoint 3 2 roll°¿     trj _pjsf°¿    newpath moveto°¿    trj _ctm _pjss°¿    } ddef°¿    °¿} def°¿/a1°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿!    dup currentpoint 4 2 roll gsave°¿    dup currentpoint 3 2 roll°¿        tr _psf°¿    newpath moveto°¿    tr _ctm _pss°¿     grestore 3 1 roll moveto tr sp°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿!    dup currentpoint 4 2 roll gsave°¿    dup currentpoint 3 2 roll°¿     trj _pjsf°¿    newpath moveto°¿    trj _ctm _pjss°¿     grestore 3 1 roll moveto tr sp°¿    } ddef°¿    °¿} def°¿/e0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿        tr _psf°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿     trj _pjsf°¿    } ddef°¿} def°¿/e1°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿"    dup currentpoint 4 2 roll gsave °¿     tr _psf  °¿!    grestore 3 1 roll moveto tr sp °¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿"    dup currentpoint 4 2 roll gsave °¿     trj _pjsf°¿!    grestore 3 1 roll moveto tr sp °¿    } ddef°¿} def°¿/i0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿    tr sp°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿        trj jsp°¿    } ddef°¿} def°¿/i1°¿{°¿W N°¿} def°¿/o0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿    tr sw rmoveto°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿    trj swj rmoveto°¿    } ddef°¿} def°¿/r0°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿    tr _ctm _pss°¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿    trj _ctm _pjss°¿    } ddef°¿} def°¿/r1°¿{°¿#/Tx    % text                            % textString Tx -°¿    {°¿=    dup currentpoint 4 2 roll currentpoint gsave newpath moveto°¿    tr _ctm _pss °¿!    grestore 3 1 roll moveto tr sp °¿    } ddef°¿*/Tj    % justified text                % textString Tj -°¿    {°¿=    dup currentpoint 4 2 roll currentpoint gsave newpath moveto°¿    trj _ctm _pjss°¿!    grestore 3 1 roll moveto tr sp °¿    } ddef°¿} def°¿% font operators°¿
  1621. % Binding°¿&/To    % begin text                     % bindType To -°¿{°¿    pop _ctm currentmatrix pop°¿} def°¿/TO    % end text                    % TO -°¿{°¿    Te _ctm setmatrix newpath°¿} def°¿% Text paths°¿6/Tp    % begin text path                % a b c d tx ty startPt Tp -°¿{°¿$    pop _tm astore pop _ctm setmatrix °¿"    _tDict begin /W {} def /h {} def°¿} def°¿/TP    % end text path                    % TP -°¿{°¿    end°¿    iTm 0 0 moveto°¿} def°¿!% Render mode & matrix operators°¿&/Tr    % begin render                    % render Tr - °¿{°¿/    _render 3 le {currentpoint newpath moveto} if°¿/    dup 8 eq {pop 0} {dup 9 eq {pop 1} if} ifelse°¿    dup /_render exch ddef°¿!    _renderStart exch get load exec°¿} def°¿K/iTm % internal set text matrix        % - iTm -    (uses _tm as implicit argument)°¿{°¿8_ctm setmatrix _tm concat 0 _rise translate _hs 1 scale°¿} def°¿./Tm % set text matrix                % a b c d tx ty Tm -°¿{°¿_tm astore pop iTm 0 0 moveto°¿} def°¿+/Td % translate text matrix         % tx ty Td -°¿{°¿7_mtx translate _tm _tm concatmatrix pop iTm 0 0 moveto°¿} def°¿/Te    % end render                    % - Te -°¿{°¿W    _render -1 eq {} {_renderEnd _render get dup null ne {load exec} {pop} ifelse} ifelse°¿    /_render -1 ddef°¿} def°¿% Attributes°¿)/Ta    % set alignment                    % alignment Ta -°¿{°¿pop°¿} def°¿3/Tf    % set font name and size        % fontname size Tf -°¿{°¿dup 1000 div /_fScl exch ddef°¿%exch findfont exch scalefont setfont°¿} def°¿6/Tl    % set leading                    % leading paragraphLeading Tl -°¿{°¿pop°¿ exch _leading astore pop°¿} def°¿//Tt    % set user tracking                % userTracking Tt -°¿{°¿pop°¿} def°¿</TW % set word spacing                % minSpace optSpace maxSpace TW -°¿{°¿3 npop°¿} def°¿0/Tw    % set computed word spacing        % wordSpace Tw°¿{°¿/_cx exch ddef°¿} def°¿@/TC % set character spacing            % minSpace optSpace maxSpace TC -°¿{°¿3 npop°¿} def°¿2/Tc    % set computed char spacing     % charSpace Tc -°¿{°¿/_ax exch ddef°¿} def°¿0/Ts % set super/subscripting (rise)    % rise Ts -°¿{°¿/_rise exch ddef°¿currentpoint°¿iTm°¿moveto°¿} def°¿M/Ti    % set indentation                % firstStartIndent otherStartIndent stopIndent Ti -°¿{°¿3 npop°¿} def°¿2/Tz % set horizontal scaling        % scalePercent Tz -°¿{°¿100 div /_hs exch ddef°¿iTm°¿} def°¿-/TA % set pairwise kerning            % autoKern TA -°¿+                                    %    autoKern = 0 -> no pair kerning°¿,                                    %             = 1 -> automatic pair kerning°¿{°¿pop°¿} def°¿0/Tq % set hanging quotes            % hangingQuotes Tq -°¿3                                    %    hangingQuotes     = 0 -> no hanging quotes°¿&                                    %                     = 1 -> hanging quotes°¿{°¿pop°¿} def°¿% Text Bodies°¿/TX {pop} def°¿.%/Tx    % non-justified text            % textString Tx -°¿+%/Tj    % justified text                % textString Tj -°¿+/Tk    % kern                            % autoKern kernValue Tk -°¿;                                    %      autoKern = 0 -> manual kern, = 1 -> auto kern°¿3                                    %    kernValue = kern value in em/1000 space°¿{°¿!exch pop _fScl mul neg 0 rmoveto°¿} def°¿5/TK    % non-printing kern                % autoKern kernValue TK -°¿{°¿2 npop°¿} def°¿+/T* % carriage return & line feed    % - T* -°¿{°¿_leading aload pop neg Td°¿} def°¿6/T*- % carriage return & negative line feed    % - T*- -°¿{°¿_leading aload pop Td°¿} def°¿,/T-    % print a discretionary hyphen    % - T- -°¿{°¿ _hyphen Tx°¿} def°¿+/T+    % discretionary hyphen hyphen    % - T+ -°¿{} def°¿3/TR    % reset pattern matrix             % a b c d tx ty TR -°¿{°¿_ctm currentmatrix pop     °¿_tm astore pop °¿iTm 0 0 moveto °¿} def°¿4/TS    % special chars                    % textString justified TS -°¿{°¿0 eq {Tx} {Tj} ifelse°¿} def°¿currentdict readonly pop end°¿ setpacking°¿%%EndResource°¿6%%BeginResource: procset Adobe_IllustratorA_AI3 1.0 2°¿@%%Title: (Adobe Illustrator (R) Version 3.0 Abbreviated Prolog)°¿%%Version: 1.0 °¿%%CreationDate: (7/22/89) ()°¿L%%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved)°¿currentpacking true setpacking°¿7userdict /Adobe_IllustratorA_AI3 61 dict dup begin put°¿% initialization°¿ /initialize                % - initialize -°¿{°¿I% 47 vars, but leave slack of 10 entries for custom Postscript fragments°¿<userdict /Adobe_IllustratorA_AI3_vars 57 dict dup begin put°¿% paint operands°¿/_lp /none def°¿ /_pf {} def°¿ /_ps {} def°¿/_psf {} def°¿/_pss {} def°¿/_pjsf {} def°¿/_pjss {} def°¿/_pola 0 def°¿/_doClip 0 def°¿% paint operators°¿$/cf    currentflat def    % - cf flatness°¿% typography operands°¿/_tm matrix def°¿5/_renderStart [/e0 /r0 /a0 /o0 /e1 /r1 /a1 /i0] def °¿6/_renderEnd [null null null null /i1 /i1 /i1 /i1] def°¿/_render -1 def°¿/_rise 0 def°¿]/_ax 0 def            % x character spacing    (_ax, _ay, _cx, _cy follows awidthshow naming convention)°¿#/_ay 0 def            % y character spacing°¿/_cx 0 def            % x word spacing°¿/_cy 0 def            % y word spacing°¿/_leading [0 0] def°¿/_ctm matrix def°¿/_mtx matrix def°¿/_sp 16#020 def°¿/_hyphen (-) def°¿/_fScl 0 def°¿ /_cnt 0 def°¿ /_hs 1 def°¿/_nativeEncoding 0 def°¿/_useNativeEncoding 0 def°¿/_tempEncode 0 def°¿/_pntr 0 def°¿/_tDict 2 dict def°¿% typography operators°¿ /Tx {} def°¿ /Tj {} def°¿% compound path operators°¿/CRender {} def°¿ % printing°¿/_AI3_savepage {} def°¿% color operands°¿/_gf null def°¿/_cf 4 array def°¿/_if null def°¿/_of false def°¿ /_fc {} def°¿/_gs null def°¿/_cs 4 array def°¿/_is null def°¿/_os false def°¿ /_sc {} def°¿/_i null def°¿Adobe_IllustratorA_AI3 begin°¿Adobe_IllustratorA_AI3°¿    {°¿     dup xcheck°¿        {°¿        bind°¿        } if°¿        pop pop°¿
  1622.     } forall°¿end°¿end°¿Adobe_IllustratorA_AI3 begin°¿"Adobe_IllustratorA_AI3_vars begin°¿newpath°¿} def°¿/terminate                % - terminate -°¿{°¿end°¿end°¿} def°¿% definition operators°¿/_                    % - _ null°¿    null def°¿/ddef                % key value ddef -°¿{°¿)Adobe_IllustratorA_AI3_vars 3 1 roll put°¿} def°¿$/xput                % key value literal xput -°¿{°¿&dup load dup length exch maxlength eq°¿    {°¿    dup dup load dup°¿    length 2 mul dict copy def°¿    } if°¿load begin def end°¿} def°¿/npop                % integer npop -°¿{°¿    {°¿    pop°¿
  1623.     } repeat°¿} def°¿% marking operators°¿/sw                    % ax ay string sw x y °¿{°¿dup length exch stringwidth°¿%exch 5 -1 roll 3 index 1 sub mul add°¿ 4 1 roll 3 1 roll 1 sub mul add°¿} def°¿./swj                % cx cy fillchar ax ay string swj x y°¿{°¿dup 4 1 roll°¿dup length exch stringwidth °¿%exch 5 -1 roll 3 index 1 sub mul add°¿!4 1 roll 3 1 roll 1 sub mul add °¿6 2 roll /_cnt 0 ddef°¿3{1 index eq {/_cnt _cnt 1 add ddef} if} forall pop°¿Nexch _cnt mul exch _cnt mul 2 index add 4 1 roll 2 index add 4 1 roll pop pop°¿} def°¿#/ss                    % ax ay string matrix ss -°¿{°¿    4 1 roll°¿'    {                % matrix ax ay char 0 0 {proc} -°¿        2 npop °¿     (0) exch 2 copy 0 exch put pop°¿    gsave°¿    false charpath currentpoint°¿    4 index setmatrix°¿    stroke°¿
  1624.     grestore°¿    moveto°¿    2 copy rmoveto°¿    } exch cshow°¿3 npop°¿} def°¿3/jss                % cx cy fillchar ax ay string matrix jss -°¿{°¿    4 1 roll°¿9    {                % cx cy fillchar matrix ax ay char 0 0 {proc} -   °¿        2 npop °¿    (0) exch 2 copy 0 exch put °¿    gsave°¿        _sp eq °¿        {°¿5        exch 6 index 6 index 6 index 5 -1 roll widthshow  °¿        currentpoint°¿        }°¿        {°¿        false charpath currentpoint°¿        4 index setmatrix stroke°¿
  1625.         }ifelse°¿
  1626.     grestore°¿    moveto°¿    2 copy rmoveto°¿    } exch cshow°¿6 npop°¿} def°¿% path operators°¿/sp                    % ax ay string sp -°¿{°¿    {°¿    2 npop (0) exch°¿    2 copy 0 exch put pop°¿    false charpath°¿    2 copy rmoveto°¿    } exch cshow°¿2 npop°¿} def°¿-/jsp                    % cx cy fillchar ax ay string jsp -°¿{°¿0    {                    % cx cy fillchar ax ay char 0 0 {proc} -°¿        2 npop °¿    (0) exch 2 copy 0 exch put °¿        _sp eq °¿        {°¿5        exch 5 index 5 index 5 index 5 -1 roll widthshow  °¿        }°¿        {°¿        false charpath°¿
  1627.         }ifelse°¿    2 copy rmoveto°¿    } exch cshow°¿5 npop°¿} def°¿% path construction operators°¿/pl                % x y pl x y°¿{°¿
  1628. transform°¿0.25 sub round 0.25 add exch°¿0.25 sub round 0.25 add exch°¿ itransform°¿} def°¿/setstrokeadjust where°¿    {°¿    pop true setstrokeadjust°¿    /c                % x1 y1 x2 y2 x3 y3 c -°¿    {°¿        curveto°¿    } def°¿    /C°¿    /c load def°¿    /v                % x2 y2 x3 y3 v -°¿    {°¿    currentpoint 6 2 roll curveto°¿    } def°¿    /V°¿    /v load def°¿    /y                % x1 y1 x2 y2 y -°¿    {°¿    2 copy curveto°¿    } def°¿    /Y°¿    /y load def°¿    /l                % x y l -°¿    {°¿    lineto°¿    } def°¿    /L°¿    /l load def°¿    /m                % x y m -°¿    {°¿    moveto°¿    } def°¿    }°¿    {%else°¿    /c°¿    {°¿     pl curveto°¿    } def°¿    /C°¿    /c load def°¿    /v°¿    {°¿"    currentpoint 6 2 roll pl curveto°¿    } def°¿    /V°¿    /v load def°¿    /y°¿    {°¿    pl 2 copy curveto°¿    } def°¿    /Y°¿    /y load def°¿    /l°¿    {°¿     pl lineto°¿    } def°¿    /L°¿    /l load def°¿    /m°¿    {°¿     pl moveto°¿    } def°¿        }ifelse°¿% graphic state operators°¿/d                    % array phase d -°¿{°¿setdash°¿} def°¿/cf    {} def            % - cf flatness°¿/i                    % flatness i -°¿{°¿    dup 0 eq°¿    {°¿    pop cf°¿    } if°¿setflat°¿} def°¿/j                    % linejoin j -°¿{°¿ setlinejoin°¿} def°¿/J                    % linecap J -°¿{°¿ setlinecap°¿} def°¿/M                    % miterlimit M -°¿{°¿setmiterlimit°¿} def°¿/w                    % linewidth w -°¿{°¿setlinewidth°¿} def°¿% path painting operators°¿/H                    % - H -°¿{} def°¿/h                    % - h -°¿{°¿
  1629. closepath°¿} def°¿/N                    % - N -°¿{°¿ _pola 0 eq °¿    {°¿)    _doClip 1 eq {clip /_doClip 0 ddef} if °¿        newpath°¿    } °¿    {°¿    /CRender {N} ddef°¿        }ifelse°¿} def°¿/n                    % - n -°¿{N} def°¿/F                    % - F -°¿{°¿ _pola 0 eq °¿    {°¿    _doClip 1 eq °¿        {°¿7        gsave _pf grestore clip newpath /_lp /none ddef _fc °¿        /_doClip 0 ddef°¿        }°¿        {°¿        _pf°¿
  1630.         }ifelse°¿    } °¿    {°¿    /CRender {F} ddef°¿        }ifelse°¿} def°¿/f                    % - f -°¿{°¿
  1631. closepath°¿F°¿} def°¿/S                    % - S -°¿{°¿ _pola 0 eq °¿    {°¿    _doClip 1 eq °¿        {°¿7        gsave _ps grestore clip newpath /_lp /none ddef _sc °¿        /_doClip 0 ddef°¿        }°¿        {°¿        _ps°¿
  1632.         }ifelse°¿    } °¿    {°¿    /CRender {S} ddef°¿        }ifelse°¿} def°¿/s                    % - s -°¿{°¿
  1633. closepath°¿S°¿} def°¿/B                    % - B -°¿{°¿ _pola 0 eq °¿    {°¿"    _doClip 1 eq     % F clears _doClip°¿    gsave F grestore °¿        {°¿4        gsave S grestore clip newpath /_lp /none ddef _sc°¿        /_doClip 0 ddef°¿        } °¿        {°¿        S°¿
  1634.         }ifelse°¿    }°¿    {°¿    /CRender {B} ddef°¿        }ifelse°¿} def°¿/b                    % - b -°¿{°¿
  1635. closepath°¿B°¿} def°¿/W                    % - W -°¿{°¿/_doClip 1 ddef°¿} def°¿/*                    % - [string] * -°¿{°¿ count 0 ne °¿    {°¿#    dup type (stringtype) eq {pop} if°¿    } if °¿_pola 0 eq {newpath} if°¿} def°¿% group operators°¿/u                    % - u -°¿{} def°¿/U                    % - U -°¿{} def°¿/q                    % - q -°¿{°¿_pola 0 eq {gsave} if°¿} def°¿/Q                    % - Q -°¿{°¿_pola 0 eq {grestore} if°¿} def°¿/*u                    % - *u -°¿{°¿_pola 1 add /_pola exch ddef°¿} def°¿/*U                    % - *U -°¿{°¿_pola 1 sub /_pola exch ddef °¿_pola 0 eq {CRender} if°¿} def°¿/D                    % polarized D -°¿
  1636. {pop} def°¿/*w                    % - *w -°¿{} def°¿/*W                    % - *W -°¿{} def°¿% place operators°¿+/`                    % matrix llx lly urx ury string ` -°¿{°¿/_i save ddef°¿6 1 roll 4 npop°¿ concat pop°¿userdict begin°¿/showpage {} def°¿
  1637. 0 setgray°¿0 setlinecap°¿1 setlinewidth°¿0 setlinejoin°¿10 setmiterlimit°¿[] 0 setdash°¿newpath°¿
  1638. 0 setgray°¿false setoverprint°¿} def°¿/~                    % - ~ -°¿{°¿end°¿ _i restore°¿} def°¿% color operators°¿/O                    % flag O -°¿{°¿0 ne°¿/_of exch ddef°¿/_lp /none ddef°¿} def°¿/R                    % flag R -°¿{°¿0 ne°¿/_os exch ddef°¿/_lp /none ddef°¿} def°¿/g                    % gray g -°¿{°¿/_gf exch ddef°¿/_fc°¿{ °¿_lp /fill ne°¿    {°¿    _of setoverprint°¿    _gf setgray°¿    /_lp /fill ddef°¿    } if°¿} ddef°¿/_pf°¿{°¿_fc°¿fill°¿} ddef°¿/_psf°¿{°¿_fc°¿ashow°¿} ddef°¿/_pjsf°¿{°¿_fc°¿ awidthshow°¿} ddef°¿/_lp /none ddef°¿} def°¿/G                    % gray G -°¿{°¿/_gs exch ddef°¿/_sc°¿{°¿_lp /stroke ne°¿    {°¿    _os setoverprint°¿    _gs setgray°¿    /_lp /stroke ddef°¿    } if°¿} ddef°¿/_ps°¿{°¿_sc°¿stroke°¿} ddef°¿/_pss°¿{°¿_sc°¿ss°¿} ddef°¿/_pjss°¿{°¿_sc°¿jss°¿} ddef°¿/_lp /none ddef°¿} def°¿'/k                    % cyan magenta yellow black k -°¿{°¿_cf astore pop°¿/_fc°¿{°¿_lp /fill ne°¿    {°¿    _of setoverprint°¿    _cf aload pop setcmykcolor°¿    /_lp /fill ddef°¿    } if°¿} ddef°¿/_pf°¿{°¿_fc°¿fill°¿} ddef°¿/_psf°¿{°¿_fc°¿ashow°¿} ddef°¿/_pjsf°¿{°¿_fc°¿ awidthshow°¿} ddef°¿/_lp /none ddef°¿} def°¿'/K                    % cyan magenta yellow black K -°¿{°¿_cs astore pop°¿/_sc°¿{°¿_lp /stroke ne°¿    {°¿    _os setoverprint°¿    _cs aload pop setcmykcolor°¿    /_lp /stroke ddef°¿    } if°¿} ddef°¿/_ps°¿{°¿_sc°¿stroke°¿} ddef°¿/_pss°¿{°¿_sc°¿ss°¿} ddef°¿/_pjss°¿{°¿_sc°¿jss°¿} ddef°¿/_lp /none ddef°¿} def°¿1/x                    % cyan magenta yellow black name gray x -°¿{°¿/_gf exch ddef°¿findcmykcustomcolor°¿/_if exch ddef°¿/_fc°¿{ °¿_lp /fill ne°¿    {°¿    _of setoverprint°¿#    _if _gf 1 exch sub setcustomcolor°¿    /_lp /fill ddef°¿    } if°¿} ddef°¿/_pf°¿{°¿_fc°¿fill°¿} ddef°¿/_psf°¿{°¿_fc°¿ashow°¿} ddef°¿/_pjsf°¿{°¿_fc°¿ awidthshow°¿} ddef°¿/_lp /none ddef°¿} def°¿1/X                    % cyan magenta yellow black name gray X -°¿{°¿/_gs exch ddef°¿findcmykcustomcolor°¿/_is exch ddef°¿/_sc°¿{°¿_lp /stroke ne°¿    {°¿    _os setoverprint°¿#    _is _gs 1 exch sub setcustomcolor°¿    /_lp /stroke ddef°¿    } if°¿} ddef°¿/_ps°¿{°¿_sc°¿stroke°¿} ddef°¿/_pss°¿{°¿_sc°¿ss°¿} ddef°¿/_pjss°¿{°¿_sc°¿jss°¿} ddef°¿/_lp /none ddef°¿} def°¿% locked object operator°¿/A                    % value A -°¿{°¿pop°¿} def°¿currentdict readonly pop end°¿ setpacking°¿% annotate page operator°¿/annotatepage°¿{°¿} def°¿%%EndResource°¿%/showpage{}def°¿/copypage{}def°¿[100 517 513 273]°¿[newpath clippath pathbbox]°¿2 dict begin°¿ /d exch def°¿ /s exch def°¿d 0 get d 1 get translate°¿,d 2 get d 0 get sub s 2 get s 0 get sub div°¿,d 3 get d 1 get sub s 3 get s 1 get sub div°¿scale°¿"s 0 get neg s 1 get neg translate°¿end°¿ %%EndProlog°¿%%BeginSetup°¿%Adobe_cmykcolor /initialize get exec°¿!Adobe_cshow /initialize get exec°¿'Adobe_customcolor /initialize get exec°¿*Adobe_typography_AI3 /initialize get exec°¿,Adobe_IllustratorA_AI3 /initialize get exec°¿[°¿M39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis°¿L/Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute°¿I/egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde°¿F/oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex°¿K/udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls°¿A/registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash°¿:/.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef°¿D/.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash°¿C/questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef°¿J/guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe°¿F/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide°¿L/.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright°¿H/fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand°¿D/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex°¿G/Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex°¿F/Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla°¿/hungarumlaut/ogonek/caron°¿TE°¿*%AI3_BeginEncoding: _Helvetica Helvetica[°¿9/_Helvetica/Helvetica 0 0 1 TZ%AI3_EndEncoding TrueType°¿ %%EndSetup°¿0 A°¿u°¿0 O°¿&1 0 0.38 0.305 (PANTONE 322 CV) 0.9 x°¿1 R°¿ 0 0.1 0 1 K°¿0 i°¿ °¿0 J°¿ °¿0 j°¿ °¿0.75 w°¿ °¿4 M°¿ [°¿]0 d°¿°¿ %AI3_Note:°¿0 D°¿509.7581 275.7713 m°¿509.7581 308.7713 L°¿103.7581 308.7713 L°¿103.7581 275.7713 L°¿509.7581 275.7713 L°¿b°¿0 R°¿306.7581 292.2713 m°¿B°¿U°¿u°¿1 R°¿509.2419 485.4226 m°¿509.2552 398.4226 L°¿103.2552 398.4232 L°¿103.2419 485.4232 L°¿509.2419 485.4226 L°¿b°¿U°¿ 0 0.2 0 0 k°¿0 G°¿327.748 445.7075 m°¿B°¿328.6899 292.4342 m°¿B°¿1 O°¿0 g°¿1 w°¿°¿491.209 451.8105 m°¿497.9594 449.5615 L°¿491.2097 447.3105 l°¿7492.0845 448.5606 492.0842 450.8106 491.209 451.8105 c°¿f°¿1 R°¿0 G°¿0.75 w°¿°¿149.0219 449.508 m°¿S°¿1 O°¿0 g°¿1 w°¿°¿224.7542 406.0035 m°¿227.0031 412.7538 L°¿229.2542 406.0042 l°¿5228.004 406.879 225.754 406.8786 224.7542 406.0035 c°¿f°¿u°¿0 O°¿1 g°¿1 R°¿0 G°¿0.75 w°¿°¿267.7512 438.1983 m°¿267.7512 413.1983 L°¿208.7512 413.1893 L°¿208.7512 438.1893 L°¿267.7512 438.1983 L°¿b°¿U°¿238.2504 430.1938 m°¿B°¿u°¿0 g°¿1 w°¿°¿261.3927 315.8841 m°¿259.1438 309.1338 L°¿256.8927 315.8834 l°¿7258.1429 315.0086 260.3929 315.009 261.3927 315.8841 c°¿f°¿U°¿u°¿1 O°¿294.0042 406.4516 m°¿296.2531 413.2019 L°¿298.5042 406.4523 l°¿6297.254 407.3271 295.004 407.3267 294.0042 406.4516 c°¿f°¿U°¿0 O°¿331.5177 315.5822 m°¿329.2688 308.8319 L°¿327.0177 315.5815 l°¿8328.2679 314.7067 330.5179 314.7071 331.5177 315.5822 c°¿f°¿u°¿1 O°¿363.7542 406.2122 m°¿366.0031 412.9625 L°¿368.2542 406.2129 l°¿6367.004 407.0877 364.754 407.0873 363.7542 406.2122 c°¿f°¿U°¿1 R°¿0 G°¿0.5 w°¿°¿366.0031 409.4 m°¿366.0188 308.775 l°¿S°¿u°¿0 O°¿1 g°¿0.75 w°¿°¿406.9993 438.2195 m°¿407.0031 413.2195 L°¿348.0031 413.2105 L°¿347.9993 438.2105 L°¿406.9993 438.2195 L°¿b°¿U°¿377.2504 430.215 m°¿B°¿u°¿1 O°¿0 g°¿1 w°¿°¿469.4986 442.3541 m°¿471.7475 449.1045 L°¿473.9986 442.3548 l°¿8472.7484 443.2296 470.4984 443.2293 469.4986 442.3541 c°¿f°¿U°¿1 R°¿0 G°¿0.5 w°¿°¿148.2392 503.4301 m°¿493.9892 503.4828 l°¿S°¿0 O°¿0 g°¿1 w°¿°¿491.1763 505.9824 m°¿497.9267 503.7334 L°¿491.177 501.4824 l°¿8492.0518 502.7325 492.0515 504.9825 491.1763 505.9824 c°¿f°¿1 R°¿0 G°¿0.5 w°¿°¿148.2401 497.9926 m°¿148.2383 508.9926 l°¿S°¿0 To°¿1 0 0 1 306.2834 469.7815 0 Tp°¿TP°¿-29.3428 0 Td°¿0 Tr°¿1 O°¿0 g°¿1 w°¿°¿/_Helvetica 8 Tf°¿0 Ts°¿100 Tz°¿0 Tt°¿0 TA°¿    0 0 5 TC°¿100 100 200 TW°¿    0 0 0 Ti°¿1 Ta°¿0 Tq°¿9 0 Tl°¿0 Tc°¿0 Tw°¿(Application code)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿0 -1 1 0 180.9859 356.969 0 Tp°¿TP°¿-12.8887 0 Td°¿0 Tr°¿0 O°¿    (Control)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿ 0 -1 1 0 231.0797 356.9377 0 Tp°¿TP°¿-21.7852 0 Td°¿0 Tr°¿ (Response A)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿0 -1 1 0 300.5484 356.719 0 Tp°¿TP°¿-21.7852 0 Td°¿0 Tr°¿ (Response B)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿0 -1 1 0 370.011 356.7815 0 Tp°¿TP°¿-22.0049 0 Td°¿0 Tr°¿ (Response C)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿1 0 0 1 306.2834 290.2815 0 Tp°¿TP°¿-31.3369 0 Td°¿0 Tr°¿1 O°¿(Operating system)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿1 0 0 1 306.2834 509.2815 0 Tp°¿TP°¿-8.8857 0 Td°¿0 Tr°¿0 O°¿(Time)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿1 0 0 1 437.8241 429.7096 0 Tp°¿TP°¿-19.7793 0 Td°¿0 Tr°¿1 O°¿11 0 Tl°¿(Notification)°¿ Tx°¿°¿(\r) TX°¿ °¿-4.0029 -11 Td°¿(of completion)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿0 O°¿166.149 315.8286 m°¿163.9001 309.0782 L°¿161.649 315.8279 l°¿7162.8992 314.9531 165.1492 314.9534 166.149 315.8286 c°¿f°¿U°¿1 R°¿0 G°¿0.5 w°¿°¿146.6147 448.6152 m°¿155.9335 448.6152 l°¿%165.4335 448.6049 163.924 439.5599 y°¿163.9615 395.1222 l°¿163.9798 371.4494 l°¿163.9798 314.3869 l°¿S°¿189.7239 308.7668 m°¿189.7239 440.2008 l°¿%190.2401 449.515 199.7399 449.4629 v°¿215.558 449.4437 l°¿259.149 449.4534 l°¿493.774 449.4534 l°¿S°¿407.0081 426.7713 m°¿463.3831 426.7713 l°¿&471.6331 426.7713 471.7581 432.7713 y°¿471.7581 439.0213 l°¿471.7581 446.3963 l°¿S°¿u°¿1 O°¿0 g°¿1 w°¿°¿130.5081 464.0161 m°¿131.5077 464.0161 L°¿131.5077 463.0165 L°¿132.5074 463.0165 L°¿132.5074 462.0168 L°¿133.5072 462.0168 L°¿133.5072 461.0172 L°¿134.5067 461.0172 L°¿134.5067 460.0175 L°¿135.5065 460.0175 L°¿135.5065 459.0179 L°¿136.506 459.0179 L°¿136.506 458.0182 L°¿137.5057 458.0182 L°¿137.5057 457.0186 L°¿138.5054 457.0186 L°¿138.5054 456.0189 L°¿139.505 456.0189 L°¿139.505 455.0193 L°¿140.5046 455.0193 L°¿140.5046 454.0196 L°¿141.5043 454.0196 L°¿141.5043 453.02 L°¿142.5039 453.02 L°¿142.5039 452.0203 L°¿143.5036 452.0203 L°¿143.5036 451.0207 L°¿144.5032 451.0207 L°¿144.5032 450.021 L°¿145.5029 450.021 L°¿145.5029 449.0214 L°¿146.5025 449.0214 L°¿146.5025 448.0217 L°¿145.5029 448.0217 L°¿145.5029 447.022 L°¿144.5032 447.022 L°¿144.5032 446.0224 L°¿146.5025 446.0224 L°¿146.5025 438.0252 L°¿143.5869 438.0252 L°¿143.5869 439.0248 L°¿141.5876 439.0248 L°¿141.5876 439.962 L°¿137.5057 439.962 L°¿137.5057 439.0248 L°¿136.506 439.0248 L°¿136.506 438.0252 L°¿135.5065 438.0252 L°¿135.5065 437.0255 L°¿134.5067 437.0255 L°¿134.5067 436.0259 L°¿133.5072 436.0259 L°¿133.5072 435.0262 L°¿132.5074 435.0262 L°¿132.5074 434.0266 L°¿131.5077 434.0266 L°¿131.5077 433.0269 L°¿130.5081 433.0269 L°¿130.5081 434.0266 L°¿129.5085 434.0266 L°¿129.5085 435.0262 L°¿128.5088 435.0262 L°¿128.5088 436.0259 L°¿127.5092 436.0259 L°¿127.5092 437.0255 L°¿126.5095 437.0255 L°¿126.5095 438.0252 L°¿125.5098 438.0252 L°¿125.5098 439.0248 L°¿124.5102 439.0248 L°¿124.5102 440.0245 L°¿123.5105 440.0245 L°¿123.5105 441.0241 L°¿122.511 441.0241 L°¿122.511 442.0238 L°¿121.5112 442.0238 L°¿121.5112 443.0234 L°¿120.5116 443.0234 L°¿120.5116 444.0231 L°¿119.5119 444.0231 L°¿119.5119 445.0227 L°¿118.5123 445.0227 L°¿118.5123 446.0224 L°¿117.5126 446.0224 L°¿117.5126 447.022 L°¿116.513 447.022 L°¿116.513 448.0217 L°¿115.5133 448.0217 L°¿115.5133 449.0214 L°¿114.5137 449.0214 L°¿114.5137 450.021 L°¿115.5133 450.021 L°¿115.5133 451.0207 L°¿116.513 451.0207 L°¿116.513 452.0203 L°¿117.5126 452.0203 L°¿117.5126 453.02 L°¿118.5123 453.02 L°¿118.5123 454.0196 L°¿119.5119 454.0196 L°¿119.5119 455.0193 L°¿120.5116 455.0193 L°¿120.5116 456.0189 L°¿121.5112 456.0189 L°¿121.5112 457.0186 L°¿122.511 457.0186 L°¿122.511 458.0182 L°¿123.5105 458.0182 L°¿123.5105 459.0179 L°¿124.5102 459.0179 L°¿124.5102 460.0175 L°¿125.5098 460.0175 L°¿125.5098 461.0172 L°¿126.5095 461.0172 L°¿126.5095 462.0168 L°¿127.5092 462.0168 L°¿127.5092 463.0165 L°¿128.5088 463.0165 L°¿128.5088 464.0161 L°¿129.5085 464.0161 L°¿129.5085 465.0158 L°¿130.5081 465.0158 L°¿130.5081 464.0161 L°¿f°¿0 O°¿1 g°¿2 J°¿ °¿2 M°¿°¿130.5081 463.0165 m°¿131.5077 463.0165 L°¿131.5077 462.0168 L°¿132.5074 462.0168 L°¿132.5074 461.0172 L°¿133.5072 461.0172 L°¿133.5072 460.0175 L°¿134.5067 460.0175 L°¿134.5067 459.0179 L°¿135.5065 459.0179 L°¿135.5065 458.0182 L°¿136.506 458.0182 L°¿136.506 457.0186 L°¿137.5057 457.0186 L°¿137.5057 456.0189 L°¿138.5054 456.0189 L°¿138.5054 455.0193 L°¿139.505 455.0193 L°¿139.505 454.0196 L°¿140.5046 454.0196 L°¿140.5046 453.02 L°¿141.5043 453.02 L°¿141.5043 452.0203 L°¿142.5039 452.0203 L°¿142.5039 451.0207 L°¿143.5036 451.0207 L°¿143.5036 450.021 L°¿144.5032 450.021 L°¿144.5032 449.0214 L°¿145.5029 449.0214 L°¿145.5029 448.0217 L°¿144.5032 448.0217 L°¿144.5032 447.022 L°¿143.5036 447.022 L°¿143.5036 446.0224 L°¿142.5039 446.0224 L°¿142.5039 445.0227 L°¿143.5036 445.0227 L°¿143.5036 439.962 L°¿141.5876 439.962 L°¿141.5876 441.0241 L°¿133.5072 441.0241 L°¿133.5072 439.9412 L°¿136.506 439.9412 L°¿136.506 439.0248 L°¿135.5065 439.0248 L°¿135.5065 438.0252 L°¿134.5067 438.0252 L°¿134.5067 437.0255 L°¿133.5072 437.0255 L°¿133.5072 436.0259 L°¿132.5074 436.0259 L°¿132.5074 435.0262 L°¿131.5077 435.0262 L°¿131.5077 434.0266 L°¿130.5081 434.0266 L°¿130.5081 435.0262 L°¿129.5085 435.0262 L°¿129.5085 436.0259 L°¿128.5088 436.0259 L°¿128.5088 437.0255 L°¿127.5092 437.0255 L°¿127.5092 438.0252 L°¿126.5095 438.0252 L°¿126.5095 439.0248 L°¿125.5098 439.0248 L°¿125.5098 440.0245 L°¿124.5102 440.0245 L°¿124.5102 441.0241 L°¿123.5105 441.0241 L°¿123.5105 442.0238 L°¿122.511 442.0238 L°¿122.511 443.0234 L°¿121.5112 443.0234 L°¿121.5112 444.0231 L°¿120.5116 444.0231 L°¿120.5116 445.0227 L°¿119.5119 445.0227 L°¿119.5119 446.0224 L°¿118.5123 446.0224 L°¿118.5123 447.022 L°¿117.5126 447.022 L°¿117.5126 448.0217 L°¿116.513 448.0217 L°¿116.513 449.0214 L°¿115.5133 449.0214 L°¿115.5133 450.021 L°¿116.513 450.021 L°¿116.513 450.7707 l°¿116.513 451.0207 L°¿117.5126 451.0207 L°¿117.5126 451.7704 l°¿117.5126 452.0203 L°¿118.5123 452.0203 L°¿118.5123 452.77 l°¿118.5123 453.02 L°¿119.5119 453.02 L°¿119.5119 454.0196 L°¿120.5116 454.0196 L°¿120.5116 455.0193 L°¿121.5112 455.0193 L°¿121.5112 456.0189 L°¿122.511 456.0189 L°¿122.511 457.0186 L°¿123.5105 457.0186 L°¿123.5105 458.0182 L°¿124.5102 458.0182 L°¿124.5102 459.0179 L°¿125.5098 459.0179 L°¿125.5098 460.0175 L°¿126.5095 460.0175 L°¿126.5095 461.0172 L°¿127.5092 461.0172 L°¿127.5092 462.0168 L°¿128.5088 462.0168 L°¿128.5088 463.0165 L°¿129.5085 463.0165 L°¿129.5085 464.0161 L°¿130.5081 464.0161 L°¿130.5081 463.0165 L°¿f°¿0 g°¿138.5054 450.021 m°¿139.505 450.021 L°¿139.505 449.0214 L°¿140.5046 449.0214 L°¿140.5046 448.0217 L°¿141.5043 448.0217 L°¿141.5043 447.022 L°¿142.5039 447.022 L°¿142.5039 446.0224 L°¿141.5251 446.0224 L°¿141.5251 447.022 L°¿140.5255 447.022 L°¿140.5255 448.0217 L°¿139.5258 448.0217 L°¿139.5258 449.0214 L°¿138.5054 449.0214 L°¿138.5054 450.021 L°¿132.9239 450.021 l°¿132.5074 450.0158 L°¿132.5074 449.2713 l°¿132.5074 449.0214 L°¿131.5077 449.0161 L°¿131.5077 448.2716 l°¿131.5077 448.0217 L°¿130.5081 448.0165 L°¿130.5081 447.3553 l°¿130.5081 446.9387 L°¿132.5907 446.9387 L°¿132.5907 447.6885 l°¿132.5907 447.9384 L°¿134.5067 447.9384 L°¿134.5067 446.9387 L°¿135.2565 446.9387 l°¿135.5065 446.9387 L°¿135.5065 445.9599 L°¿139.505 445.9391 L°¿139.505 444.9811 L°¿134.59 444.9811 L°¿134.59 444.273 l°¿134.59 444.0231 L°¿132.5907 444.0231 L°¿132.5803 444.9889 L°¿131.841 444.9811 l°¿131.5912 444.9811 L°¿131.5912 446.0224 L°¿129.5917 446.0224 L°¿129.5917 443.9398 L°¿130.3208 443.9398 l°¿130.5914 443.9398 L°¿130.5914 442.9401 L°¿131.2578 442.9401 l°¿131.5912 442.9401 L°¿131.5912 442.0238 L°¿133.5072 442.0238 L°¿133.5072 441.0241 L°¿131.5912 441.0241 L°¿131.5912 442.0238 L°¿130.8414 442.0238 l°¿130.5914 442.0238 L°¿130.5914 442.9401 L°¿129.8417 442.9401 l°¿129.5917 442.9401 L°¿129.5917 443.9398 L°¿128.8421 443.9398 l°¿128.5921 443.9398 L°¿128.5921 444.9394 L°¿126.5928 444.9394 L°¿126.5928 446.0172 L°¿129.5709 446.0172 L°¿129.5709 448.0113 L°¿130.5081 448.0165 L°¿130.5081 448.6829 l°¿130.5081 449.0161 L°¿131.5077 449.0161 L°¿131.5077 449.6826 l°¿131.5077 450.0106 L°¿132.5074 450.0158 L°¿132.5074 450.9321 L°¿138.5054 450.9374 L°¿138.5054 450.021 L°¿f°¿1 g°¿134.5067 445.9599 m°¿132.5907 445.9599 L°¿132.5907 446.9387 L°¿134.5067 446.9387 L°¿134.5067 445.9599 L°¿f°¿U°¿0 To°¿ 0 -1 1 0 154.7062 356.7713 0 Tp°¿TP°¿-32.6728 0 Td°¿0 Tr°¿0 g°¿0 J°¿ °¿4 M°¿°¿9 0 Tl°¿(Request A/Control)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿ 0 -1 1 0 263.4562 357.2713 0 Tp°¿TP°¿-18.6728 0 Td°¿0 Tr°¿ (Request B)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿ 0 -1 1 0 333.4562 356.2713 0 Tp°¿TP°¿-18.8926 0 Td°¿0 Tr°¿ (Request C)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿u°¿1 R°¿0 G°¿0.5 w°¿°¿329.2501 413.24 m°¿329.2658 311.5525 l°¿S°¿U°¿u°¿296.2501 409.24 m°¿296.2658 308.8025 l°¿S°¿U°¿u°¿259.2501 413.24 m°¿259.2658 311.115 l°¿S°¿U°¿u°¿227.0001 410.74 m°¿227.0158 309.0525 l°¿S°¿U°¿u°¿0 O°¿1 g°¿0.75 w°¿°¿337.5 438.25 m°¿337.5 413.25 L°¿278.5 413.25 L°¿278.5 438.25 L°¿337.5 438.25 L°¿b°¿U°¿u°¿0 To°¿1 0 0 1 238.774 426.8596 0 Tp°¿TP°¿-21.335 0 Td°¿0 Tr°¿0 g°¿1 w°¿°¿(Completion )°¿ Tx°¿°¿(\r) TX°¿ °¿5.3311 -9 Td°¿ (routine A)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿1 0 0 1 308.274 426.8596 0 Tp°¿TP°¿-21.335 0 Td°¿0 Tr°¿(Completion )°¿ Tx°¿°¿(\r) TX°¿ °¿5.3311 -9 Td°¿ (routine B)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿0 To°¿1 0 0 1 377.774 426.8596 0 Tp°¿TP°¿-21.335 0 Td°¿0 Tr°¿(Completion )°¿ Tx°¿°¿(\r) TX°¿ °¿5.1113 -9 Td°¿ (routine C)°¿ Tx°¿ °¿(\r) TX°¿ °¿TO°¿U°¿%%PageTrailer°¿
  1639. %%Trailer°¿+Adobe_IllustratorA_AI3 /terminate get exec°¿)Adobe_typography_AI3 /terminate get exec°¿&Adobe_customcolor /terminate get exec°¿ Adobe_cshow /terminate get exec°¿$Adobe_cmykcolor /terminate get exec°¿&Adobe_packedarray /terminate get exec°¿%%EndDocument†ø$◊#ˇ ˇˇˇˇ#◊ 
  1640. d, Palatino
  1641. .°dONLNd©$Ø+«@•°dONLNdµ$“) ?By keeping all data associated with a particular session in the°dONLNdB$µ0ÿ* >extended parameter block, you can support multiple independent°dONLNdÅ0µ<€*     sessions.°dONLNdãB©NØ(j«•°dONLNdçBµN’) ?By putting values needed by a completion routine in an extended°dONLNdÕNµZ‘* ?parameter block instead of in program global variables, you can°dONLNdZµfƒ* <prevent race conditions. This provides noninterrupt code and°dONLNdJfµrô* 1interrupt code with a safe method to communicate.,     Helvetica °dONLNd|Éñë—(¨¥PUTTING°dONLNdÉÉ—ë’); °dONLNdÑÉ‘ëÔ)THE°dONLNdáÉÔëÛ) °dONLNdàÉÚë    )BIG°dONLNdãÉ    ë) °dONLNdåÉ ë9)THREE°dONLNdëÉ9ë=)- °dONLNdíÉ<ëÖ)TOGETHER
  1642. °dONLNdõïñ°(Ω¥INow that you know about OS queues, call chaining, and extending parameter°dONLNd°ñ≠ * Tblocks, let’s look at a simple example of how these techniques can be used together.°dONLNd:≠ñπΔ* DPPC Toolbox calls, being slightly simpler, are used in this example.°dONLNd≈ñ—˚*PIn the example, the program is to receive and accept a PPC session request, read°dONLNd–—ñ›
  1643. * Ssome data, process the data, and then close the connection. To accomplish this, the°dONLNd$›ñÈ‹* Eprogram calls PPCInform asynchronously with a completion routine, has°dONLNdjÈñı* LPPCInform’s completion routine call PPCRead asynchronously with a completion°dONLNd∑ıñ* Rroutine, and then has PPCRead’s completion routine schedule processing of the data°dONLNd
  1644. ñ * Sby putting a request into an OS queue. After the data is removed from the queue and°dONLNd^ñÍ* Jprocessed in the application’s main event loop, the program calls PPCClose°dONLNd©ñ%* Nasynchronously with a completion routine and has PPCClose’s completion routine°dONLNd¯%ñ1Ç* 4call PPCInform again to wait for another connection.°dONLNd-=ñI
  1645. *OWe begin with an extended PPC parameter block record that can hold all the data°dONLNd}IñUì* 8the program needs to access from the various procedures:,
  1646. Courier    °dONLNd∂bñmØ*CONST°dONLNdΩn§y+ kPPCIOBufSize = 1024;°dONLNd”nyü)t{ Size of the I/O buffer. }°dONLNdÔzñÖ™(°¥TYPE°dONLNdıܧë®+ 4PPCIOBuffer = ARRAY[1..kPPCIOBufSize] OF SignedByte;°dONLNd+í§ù0* PPCSessRecPtr = ^PPCSessRec;°dONLNdIû§©* PPCSessRec = RECORD°dONLNd`™¡µ–+ pb:°dONLNdh™µr)W PPCParamBlockRec;°dONLNd{™~µ˚)f{ The pb must be first. }°dONLNdò∂¡¡’(›flerr:°dONLNd°∂¡;)W OSErr;°dONLNd≠∂~¡Á)f{ To catch results. }°dONLNdΔ¬¡Õ(ÈflsessPortName:°dONLNd’¬ÕT)W  PPCPortRec;°dONLNd‰¬~Õ˚)f{ Port name returned to }°dONLNdŒ~Ÿƒ* { PPCInform. }°dONLNd ⁄¡Âk(fl"sessLocationName: LocationNameRec;°dONLNdC⁄~Â)Ω{ Location name returned }°dONLNdnÊ~Ò”* { to PPCInform. }°dONLNdÉÚ¡˝(flsessUserName:°dONLNdíÚ˝;)W Str32;°dONLNdûÚ~˝˚)f{ User name returned to }°dONLNd»˛~    ƒ* { PPCInform. }°dONLNd⁄
  1647. ¡‰(1flbuffer:°dONLNdÂ
  1648. Y)W PPCIOBuffer;°dONLNdı
  1649. ~)f{ R/W buffer used by this }°dONLNd!~!∫* { session. }°dONLNd0"≥-«(I—END; xBx/,Times ({& +
  1650. 20+md)e)v)e)l)o)p)  )
  1651. March 1993ˇj◊#ˇ ˇˇˇˇ#◊ 
  1652. d, Palatino
  1653. .°dONLNd$&+6@;Next, we declare the global variables used in this example:,
  1654. Courier    °dONLNd<1<'*VAR°dONLNdA=&H]+ gQuitting: °dONLNdM=oHó)IBOOLEAN;°dONLNdX=ΔHz)W${ True when no new sessions should }°dONLNdâIΔT* { be allowed. }°dONLNdöU&`b(|D gPortRefNum:°dONLNdßUo`µ)IPPCPortRefNum;°dONLNd∂UΔ`p)W"{ PPC port reference number from }°dONLNdÂaΔl* { PPCOpen. }°dONLNdÛm&x](îD gReadQueue:°dONLNdˇmoxà)IQHdr;°dONLNdmΔxÑ)W&{ Where PPCRead parameter blocks are }°dONLNd;yΔÑ\* { scheduled to be processed. }°dONLNd[Ö&ê](¨D gDoneQueue:°dONLNdgÖoêà)IQHdr;°dONLNdpÖΔêâ)W'{ Where parameter blocks are put when }°dONLNd§ëΔú* %{ completion routines are done with }°dONLNd’ù∑®º(ƒ’ °dONLNd◊ùΔ®Û)    { them. }
  1655. °dONLNd·¥¿p(‹6HSeveral procedures are used in the example: DoPPCInform, InformComplete,°dONLNd*¿Ãç* IReadComplete, ProcessPPCData, EndComplete, and HandlePPCErrors. Not shown°dONLNdtÃÿx* Pin this article is the program code for such operations as opening the PPC port,°dONLNd≈ÿ‰u* Lsetting gQuitting to FALSE, and initializing the two OS queue headers before°dONLNd‰Ç* DoPPCInform is called.°dONLNd)¸z*LDoPPCInform simply fills in the parameter block, previously allocated by the°dONLNdv* Jprogram and passed to DoPPCInform, and calls PPCInform asynchronously with°dONLNd¡ à* OInformComplete as the completion routine. Any errors returned by PPCInform will°dONLNd ,ß* be handled by InformComplete.    °dONLNd/9D˘*-PROCEDURE DoPPCInform (pbPtr: PPCSessRecPtr);°dONLNd]EP1* BEGIN°dONLNddQ&\Ö+ { Call PPCInform. }°dONLNdy]&h9* 7PPCInformPBPtr(pbPtr)^.ioCompletion := @InformComplete;°dONLNd≤i&t* 1PPCInformPBPtr(pbPtr)^.portRefNum := gPortRefNum;°dONLNdÂu&į* *PPCInformPBPtr(pbPtr)^.autoAccept := TRUE;°dONLNdÅ&å>* 8PPCInformPBPtr(pbPtr)^.portName := @pbPtr^.sessPortName;°dONLNdKç&òf* @PPCInformPBPtr(pbPtr)^.locationName := @pbPtr^.sessLocationName;°dONLNdçô&§>* 8PPCInformPBPtr(pbPtr)^.userName := @pbPtr^.sessUserName;°dONLNd«•&∞u* C{ Error conditions are ignored in this procedure because they are }°dONLNd ±&º∑* { caught in InformComplete. }°dONLNd+Ω&»** 4pbPtr^.err := PPCInformAsync(PPCInformPBPtr(pbPtr));°dONLNda…&‘Δ*  { Continued at InformComplete. }°dONLNdÇ’‡,(¸6END;
  1656. °dONLNdáϯç*NInformComplete is called when PPCInform completes. InformComplete first checks°dONLNd÷¯l* Nfor errors from PPCInform. If the result is noErr, InformComplete fills in the°dONLNd%* Iparameter block and calls PPCRead asynchronously with ReadComplete as the°dONLNdoZ* Ecompletion routine. Any errors returned by PPCRead will be handled by°dONLNdµ(â* PReadComplete. If PPCInform failed (the result is not noErr), InformComplete puts x4x&,Times ({) ,     Helvetica+
  1657. 21(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1658. March 1993ˇ ◊#ˇ ˇˇˇˇ#◊ 
  1659. d, Palatino
  1660. .°dONLNdñ$˛+¥@Mthe parameter block into gDoneQueue, where the error condition can be handled°dONLNdN$ñ0 * from the program’s event loop.,
  1661. Courier    °dONLNdm=ñHÜ*0PROCEDURE InformComplete (pbPtr: PPCSessRecPtr);°dONLNdûIñTØ* BEGIN°dONLNd•U§`è+ /IF PPCInformPBPtr(pbPtr)^.ioResult = noErr THEN°dONLNd◊a≥lô+ .{ The PPCInform call completed successfully. }°dONLNdm≥xÃ* BEGIN°dONLNdy¡Ñ+ { Call PPCRead. }°dONLNd&Ö¡ê¿* 3PPCReadPBPtr(pbPtr)^.ioCompletion := @ReadComplete;°dONLNd]ë¡úª* 2{ We're reusing the same parameter block, so the }°dONLNdìù¡®u* ${ sessRefNum is already filled in. }°dONLNdª©¡¥¿* 3PPCReadPBPtr(pbPtr)^.bufferLength := kPPCIOBufSize;°dONLNdÚµ¡¿∂* 1PPCReadPBPtr(pbPtr)^.bufferPtr := @pbPtr^.buffer;°dONLNd'¡¡Ã¸* ?{ Error conditions are ignored in this procedure because they }°dONLNdjÕ¡ÿ\* { are caught in ReadComplete. }°dONLNd矡‰¸* ?PPCSessRecPtr(pbPtr)^.err := PPCReadAsync(PPCReadPBPtr(pbPtr));°dONLNd–¡W* { Continued at ReadComplete. }°dONLNdÒÒ≥¸¬(—END°dONLNdˆ˝§∏($¬ELSE°dONLNd˝    ≥È+ >{ The PPCInform call failed. Drop the parameter block in the }°dONLNd>≥ g* ${ "done" queue for handling later. }°dONLNde!≥,q* &Enqueue(QElemPtr(pbPtr), @gDoneQueue);°dONLNdé-≥8S*  { Dequeued by HandlePPCErrors. }°dONLNdØ9ñD™(`¥END;
  1662. °dONLNd¥Pñ\*LReadComplete is called when PPCRead completes. ReadComplete first checks for°dONLNd\ñh* Rerrors from PPCRead. If the result is noErr, ReadComplete puts the parameter block°dONLNdThñt* Ointo gReadQueue. If PPCRead failed (the result is not noErr), ReadComplete puts°dONLNd§tñÄ˙* Nthe parameter block into gDoneQueue. In either case, the information queued is°dONLNdÛÄñåI* &handled from the program’s event loop.    °dONLNdôñ§ã*1PROCEDURE ReadComplete (pbPtr: PPCParamBlockPtr);°dONLNdL•ñ∞Ø* BEGIN°dONLNdS±§ºÖ+ -IF PPCReadPBPtr(pbPtr)^.ioResult = noErr THEN°dONLNdÉΩ≥»º+ 5{ The PPCRead call completed successfully. Drop the }°dONLNdª…≥‘⁄* ;{ parameter block in the "read" queue for handling later. }°dONLNd˘’≥‡l* %Enqueue(QElemPtr(pbPtr), @gReadQueue)°dONLNd!·≥ÏN* { Dequeued by ProcessPPCData. }°dONLNdB̧¯∏(¬ELSE°dONLNdI˘≥fl+ <{ The PPCRead call failed. Drop the parameter block in the }°dONLNdà≥g* ${ "done" queue for handling later. }°dONLNdØ≥l* %Enqueue(QElemPtr(pbPtr), @gDoneQueue)°dONLNd◊≥(S*  { Dequeued by HandlePPCErrors. }°dONLNd¯)ñ4™(P¥END; xBx/,Times ({& ,     Helvetica+
  1663. 22+md)e)v)e)l)o)p)  )
  1664. March 1993ˇ ¯◊#ˇ ˇˇˇˇ#◊ 
  1665. d, Palatino
  1666. .°dONLNd$ä+6@OProcessPPCData is called regularly from the program’s event loop. If gReadQueue°dONLNdP$0è* Ocontains a parameter block, ProcessPPCData removes the parameter block from the°dONLNd†0<â* Rqueue and processes the data read in the PPCSessRec’s buffer. After processing the°dONLNdÛ<Hz* Hdata, ProcessPPCData calls PPCEnd asynchronously with EndComplete as the°dONLNd<HTS* Dcompletion routine. Any errors returned by PPCEnd will be handled by°dONLNdÅT`X* EndComplete.,
  1667. Courier    °dONLNdémxï*PROCEDURE ProcessPPCData;°dONLNd©y&Ñ5+ VAR°dONLNdØÖ5êû+ pbPtr: PPCSessRecPtr;°dONLNd≈ù®1(ƒ6BEGIN°dONLNdé&¥+ -{ Check for a parameter block in the queue. }°dONLNd˚µ&¿¡* IF gReadQueue.qHead <> NIL THEN°dONLNd¡5ÃN+ BEGIN°dONLNd&ÕCÿG+ 4{ Get the PPCSessRec and remove it from the queue. }°dONLNd^ŸC‰* )pbPtr := PPCSessRecPtr(gReadQueue.qHead);°dONLNdãÂCL* 5IF Dequeue(QElemPtr(pbPtr), @gReadQueue) = noErr THEN°dONLNd≈ÒR¸k+ BEGIN°dONLNd–˝`n+ 6{ Process PPCReadPBPtr(pbPtr)^.actualLength bytes of }°dONLNd     `U* 1{ data in the data buffer, pbPtr^.buffer, here. }°dONLNdC` (* ({ Then call PPCEnd to end the session. }°dONLNdq!`,U* 1PPCEndPBPtr(pbPtr)^.ioCompletion := @EndComplete;°dONLNd®-`8Ç* :{ Error conditions are ignored in this procedure because }°dONLNdË9`D* #{ they are caught in EndComplete. }°dONLNdE`PF* .pbPtr^.err := PPCEndAsync(PPCEndPBPtr(pbPtr));°dONLNdEQ`\Ò* { Continued at EndComplete. }°dONLNdg]Rhf(ÑpEND;°dONLNdni5tI(êSEND;°dONLNdsuÄ,(ú6END;
  1668. °dONLNdxåòs*LEndComplete is called when PPCEnd completes. It first checks for errors from°dONLNd≈ò§s* LPPCEnd. If the result is noErr, EndComplete either calls DoPPCInform to call°dONLNd§∞Ü* NPPCInform asynchronously again or puts the parameter block into gDoneQueue. If°dONLNda∞ºé* RPPCEnd failed (the result is not noErr), EndComplete puts the parameter block into°dONLNd¥º»Ä* LgDoneQueue. Any queued information is handled from the program’s event loop.    °dONLNd’‡*0PROCEDURE EndComplete (pbPtr: PPCParamBlockPtr);°dONLNd2·Ï1* BEGIN°dONLNd9Ì&¯+ ,IF PPCEndPBPtr(pbPtr)^.ioResult = noErr THEN°dONLNdh˘5*+ 1BEGIN { The PPCEnd call completed successfully. }°dONLNdùC¨+ IF NOT gQuitting THEN°dONLNd∑RV+ 4{ Reuse the parameter block for another PPCInform. }°dONLNdR(˜* !DoPPCInform(PPCSessRecPtr(pbPtr))°dONLNd)R4[* 5{ Continued at DoPPCInform and then InformComplete. } x4x&,Times ({) ,     Helvetica+
  1669. 23(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1670. March 1993ˇ
  1671. ™◊#ˇ ˇˇˇˇ#◊ 
  1672. d,
  1673. Courier    .°dONLNd¡$’+fl@ELSE°dONLNd    %–0‘+ 4{ Drop the parameter block in the "done" queue for }°dONLNdB1–</* { handling later. }°dONLNdZ=–Hé* &Enqueue(QElemPtr(pbPtr), @gDoneQueue);°dONLNdÑI¡Ta(pfl { Dequeued by HandlePPCErrors. }°dONLNdßU≥`¬(|—END°dONLNd¨a§l∏(à¬ELSE°dONLNd≥m≥xX+ !BEGIN { The PPCEnd call failed. }°dONLNdÿy¡Ñ±+ 0{ Drop the parameter block in the "done" queue }°dONLNd Ö¡ê4* { for handling later. }°dONLNd'ë¡ú* &Enqueue(QElemPtr(pbPtr), @gDoneQueue);°dONLNdQù¡®a*  { Dequeued by HandlePPCErrors. }°dONLNdt©≥¥«(–—END;°dONLNdyµñ¿™(‹¥END;, Palatino
  1674. °dONLNd~Ãñÿ*PHandlePPCErrors is called regularly from the program’s event loop. If gDoneQueue°dONLNdœÿñ‰˝* Kcontains any parameter blocks, HandlePPCErrors removes the parameter blocks°dONLNd‰ñ* Rfrom the queue one at a time, checks to see what PPC call failed by inspecting the°dONLNdnñ¸·* IcsCode field of the parameter block, and then handles the error condition°dONLNd∏¸ñ¡* ?appropriately. If the call that failed was PPCRead or PPCWrite,°dONLNd¯ñ„* CHandlePPCErrors calls PPCEnd asynchronously with EndComplete as the°dONLNd<ñ —* Dcompletion routine. Any errors returned by PPCEnd will be handled by°dONLNdÅ ñ,÷* EndComplete.    °dONLNdé9ñD*PROCEDURE HandlePPCErrors;°dONLNd™E§PΩ+ CONST°dONLNd±Q§\I* !{ PPC csCodes from async calls. }°dONLNd’]≥h˛+ ppcOpenCmd = 1;°dONLNdÁi≥t* ppcStartCmd = 2;°dONLNd˙u≥Ä* ppcInformCmd = 3;°dONLNdÅ≥å* ppcAcceptCmd = 4;°dONLNd"ç≥ò* ppcRejectCmd = 5;°dONLNd6ô≥§* ppcWriteCmd = 6;°dONLNdI•≥∞˛* ppcReadCmd = 7;°dONLNd[±≥º˘* ppcEndCmd = 8;°dONLNdlΩ≥»* ppcCloseCmd = 9;°dONLNd…≥‘* IPCListPortsCmd = 10;°dONLNdñ’§‡≥(¸¬VAR°dONLNdú·≥Ï+ pbPtr: PPCSessRecPtr;°dONLNd≤˘ñØ( ¥BEGIN°dONLNdπ§ä+ .{ Process any parameter blocks in the queue. }°dONLNdȧD*  WHILE gDoneQueue.qHead <> NIL DO°dONLNd ≥(Ã+ BEGIN°dONLNd)¡4≈+ 4{ Get the PPCSessRec and remove it from the queue. }°dONLNdM5¡@é* )pbPtr := PPCSessRecPtr(gDoneQueue.qHead); xBx/,Times ({& ,     Helvetica+
  1675. 24+md)e)v)e)l)o)p)  )
  1676. Marvh 1993ˇé◊#ˇ ˇˇˇˇ#◊ 
  1677. d,
  1678. Courier    .°dONLNdC$L+a@5IF Dequeue(QElemPtr(pbPtr), @gDoneQueue) = noErr THEN°dONLNd:%R0¸+ "CASE PPCEndPBPtr(pbPtr)^.csCode OF°dONLNdb1`<i+ 5ppcOpenCmd..ppcRejectCmd, ppcEndCmd..IPCListPortsCmd:°dONLNdû=oHU+ .{ For these calls, we'll just dispose of the }°dONLNd”IoT”* { parameter block. }°dONLNdÓUo`‚* DisposePtr(Ptr(pbPtr));°dONLNd a`lÿ(à~ppcWriteCmd, ppcReadCmd:°dONLNd+moxà+ BEGIN°dONLNd8y}Ñc+ .{ We need to call PPCEnd after read or write }°dONLNdnÖ}êY* ,{ failures to clean up after this session. }°dONLNd¢ë}úr* 1PPCEndPBPtr(pbPtr)^.ioCompletion := @EndComplete;°dONLNd€ù}®w* 2{ Error conditions are ignored in this procedure }°dONLNd©}¥T* +{ because they are caught in EndComplete. }°dONLNdHµ}¿c* .pbPtr^.err := PPCEndAsync(PPCEndPBPtr(pbPtr));°dONLNd~¡}Ã* { Continued at EndComplete. }°dONLNd¢ÕoÿÉ(ÙçEND;°dONLNd´ŸR‰f(pEND;°dONLNd≤Â5I( SEND;°dONLNd∑Ò¸,(6END;, Palatino
  1679. °dONLNdºj*JIn this example of extending parameter blocks and using OS queues and call°dONLNd Å* Pchaining, notice that asynchronous calls are chained together until an operation°dONLNdX ,n* Lthat can’t be accomplished at interrupt time is necessary; then the extended°dONLNd•,8è* Rparameter block is put into an OS queue where the main program can access it. Very°dONLNd¯8DÉ* Ofew global variables are needed because OS queues are used to hold any data the°dONLNdHDPé* Rmain program code needs to access. Local variables aren’t needed by the completion°dONLNdõP\ä* Oroutines because the extended parameter block, PPCSessRec, holds everything the°dONLNdÎ\hä* completion routines need.,     Helvetica °dONLNdyáj*    DEBUGGING°dONLNdyján)R °dONLNdymáó)HINTS
  1680. °dONLNdãóK(≥6DHere are the top five debugging hints for writing asynchronous code.    °dONLNdZ§Ø+*Use°dONLNd]§+Ø.) °dONLNd^§-Ø\)Debugger°dONLNdf§\Ø_)/ °dONLNdg§^Øh)or°dONLNdi§hØk)
  1681.  °dONLNdj§jØò)DebugStr°dONLNdr§òØõ). °dONLNds§öØ≤)calls°dONLNdx§≤ص) °dONLNdy§¥ØΔ)and°dONLNd|§ΔØ…) °dONLNd}§»ØŒ)a°dONLNd~§ŒØ—) °dONLNd§–ظ)    low-level°dONLNdà§¸Øˇ), °dONLNd⧲Ø,)debugger°dONLNdë§,Ø3).. 
  1682. °dONLNdì£3Øã)Because completion°dONLNd¶ØªÇ(◊6Troutines are called by the system, usually as a result of an interrupt, source-level°dONLNd˚ª«É* Odebuggers don’t work with completion routines. If you’re having problems with a°dONLNdK«”ë* Scompletion routine, first look at the parameter block used to make the asynchronous°dONLNdü”flÇ* Scall. Look both before and after the call by using a Debugger or DebugStr call just°dONLNdÛflÎê* Rbefore you make the asynchronous call and again at the beginning of the completion°dONLNdFΘ/* >routine (remember, register A0 points to the parameter block).    °dONLNdÖ2*Make°dONLNdâ25) °dONLNdä4J)sure°dONLNdéJM) °dONLNdèL~)    parameter°dONLNdò~Å)2 °dONLNdôİ)blocks°dONLNdü°§)! °dONLNd†£≥)are°dONLNd£≥∂) °dONLNd§µ◊)around°dONLNd™◊⁄)" °dONLNd´ŸÁ)for°dONLNdÆÁÍ) °dONLNdØÈ˘)the°dONLNd≤˘¸) °dONLNd≥˚ )life°dONLNd∑ ) °dONLNd∏)of°dONLNd∫)
  1683.  °dONLNdª))the°dONLNdæ),) °dONLNdø+Ü)asynchronous call°dONLNd–Üä)[.
  1684. °dONLNd“Ö(76NThe parameter block will have a whole new meaning if you forget and allocate a°dONLNd!'â* Qparameter block on the local stack, then make an asynchronous call with it, leave°dONLNds'3~* Qthe current procedure or function, and reuse the stack for something new. There’s°dONLNd≈3?j* Inothing the system hates more than a completely bogus parameter block. If°dONLNd    3j?|([à you x4x&,Times +°  +
  1685. 25(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1686. March 1993ˇ2◊#ˇ ˇˇˇˇ#◊ 
  1687. d, Palatino
  1688. .°dONLNdñ$+¥@Qcheck your parameter block at completion time and the contents are different from°dONLNdR$ñ0h* -what you expected, you’ve probably done this.,     Helvetica    °dONLNdÄ=ñH∞*Don’t°dONLNdÖ=∞H≥) °dONLNdÜ=≤HŒ)reuse°dONLNdã=ŒH—) °dONLNdå=–H÷)a°dONLNdç=÷HŸ) °dONLNdé=ŸH )    parameter°dONLNdó= H)2 °dONLNdò=H()block°dONLNdù=(H+) °dONLNdû=*HG)that’s°dONLNd§=GHJ) °dONLNd•=IHR)in°dONLNdß=RHU)     °dONLNd®=THf)use°dONLNd´=fHm). 
  1689. °dONLNd≠<mH˙)A parameter block passed to an°dONLNdÃHñT˘(p¥Nasynchronous call is owned by the operating system until the asynchronous call°dONLNdTñ`* Scompletes. If you reuse the parameter block before the asynchronous call completes,°dONLNdo`ñlÛ* Nat least one of the calls made with the parameter block will fail or crash the°dONLNdælñx˛* Psystem. This can happen if you use a parameter block once from one place in your°dONLNdxñÑØ* =program and then forget and use it again from somewhere else.°dONLNdMêñú˜*MGlobal parameter blocks should be avoided, because they’re easy to reuse from°dONLNdõúñ®* Rseveral places within a program. If you keep your unused parameter blocks in an OS°dONLNdÓ®ñ¥Ç* 5queue, you can safely claim one and reuse it anytime.    °dONLNd$¡ñÃ≤*Avoid°dONLNd)¡≤õ) °dONLNd*¡¥Ã„)SyncWait°dONLNd2¡„ÃÁ)/.
  1690. °dONLNd3¿ÁÃ)B Does your Macintosh just sit there not responding to user events?°dONLNdvÃñÿ˛(Ù¥QDrop into the debugger and take a look at the code that’s executing. Does it look°dONLNd»ÿñ‰√*
  1691. like this?,
  1692. Courier    °dONLNd”Òñ¸¥*MOVE.W°dONLNd⁄Ò¡¸˝)+ $0010(A0),D0°dONLNdÁ˝ñØ($¥BGT.S°dONLNdÌ˝¡Ó)+    -$04,(PC)
  1693. °dONLNd˜ñ ˆ(<¥NThat’s SyncWait, the routine that synchronous calls sit in while waiting for a°dONLNdF ñ,˚* Orequest to complete. Register A0 points to the parameter block used to make the°dONLNdñ,ñ8Ô* Ncall, offset $10 is the ioResult field of the parameter block, and SyncWait is°dONLNdÂ8ñDê* ;waiting for ioResult to be less than or equal to 0 (noErr).°dONLNd!Pñ\Í*OThe ioResult field is changed by code executing as a result of an interrupt. If°dONLNdq\ñh* Tinterrupts are disabled (because the synchronous call was made at interrupt time) or°dONLNdΔhñt˚* Pif the synchronous call was made to a service that’s busy, you’ll be in SyncWait°dONLNdtñÄ* Qforever. Take a look at the parameter block and where it is in memory, and you’ll°dONLNdiÄñå* Pprobably be able to figure out which synchronous call was made at interrupt time°dONLNd∫åñò* and which program made it.    °dONLNd’•ñ∞¥*Leave°dONLNd⁄•¥∞∑) °dONLNd€•∂∞º)a°dONLNd‹•º∞ø) °dONLNd›•æ∞“)trail°dONLNd‚•“∞’) °dONLNd„•‘∞fi)of°dONLNd•fi∞·)
  1694.  °dONLNdÊ•‡∞¸)bread°dONLNdΕ¸∞ˇ) °dONLNdÏ•˛∞")crumbs°dONLNdÚ•"∞))$. 
  1695. °dONLNdÙ§)∞ˆ)+There’s nothing harder than reading chained°dONLNd ∞ñº˙(ÿ¥Lasynchronous source code with no comments. You should always use comments to°dONLNdmºñ»˛* Nremind yourself where your chained call sequence goes. In the PPC code example°dONLNdº»ñ‘˙* Lgiven above, I left comments like “Continued at EndComplete” or “Dequeued by°dONLNd    ‘ñ‡Ì* HProcessPPCData” to remind me where the chained call sequence will resume°dONLNdR‡ñÏ√*
  1696. execution. °dONLNd]˝ñ ‘*COMMON°dONLNdc˝‘ ÿ)> °dONLNdd˝◊ ")PROBLEMS°dONLNdl˝" &)K °dONLNdm˝% B)AND°dONLNdp˝B F) °dONLNdq˝E m)THEIR°dONLNdv˝m q)( °dONLNdw˝p ¿)    SOLUTIONS
  1697. °dONLNdÅñÙ(7¥KThis section warns of some common problems and suggests ways to work around°dONLNdÕñ'±* them. xBx/,Times ({& +
  1698. 26+md)e)v)e)l)o)p)  )
  1699. March 1993ˇ◊#ˇ ˇˇˇˇ#◊ 
  1700. d,     Helvetica    .°dONLNd$t+6@TIME-CONSUMING°dONLNdt$w)\ °dONLNdv$|)T°dONLNd{$ó)ASKS°dONLNdó$ö) °dONLNdô$¶)AT°dONLNd¶$©) °dONLNd®$‚)    INTERRUPT°dONLNd!‚$Â): °dONLNd"‰$˝)TIME, Palatino
  1701. °dONLNd'$0(L6NYou may find a situation where a completion routine needs to perform some time°dONLNdu$0É(Lù-°dONLNdv0<Ü(X6Rconsuming task, but that task can be performed from interrupt-time code. This is a°dONLNd…<Hx* Jsituation where the Deferred Task Manager may be useful. The Deferred Task°dONLNdHTí* RManager allows you to improve interrupt handling by deferring a lengthy task until°dONLNdgT`ì* Uall interrupts can be reenabled, but while still within the hardware interrupt cycle.    °dONLNdæq|o*WAITNEXTEVENT°dONLNdÀqo|r)W °dONLNdÃqq|ì)SLEEP°dONLNd—qì|ñ)" °dONLNd“qï|ƒ)LATENCY
  1702. °dONLNd⁄|àç(§6TIf you set your sleep time to a large value, maybe because you’ve been switched out,°dONLNd/àîÉ* Opolling from the program’s event loop may cause additional latency. The Process°dONLNdî†É* MManager’s WakeUpProcess call, when available, can be used to shorten the time°dONLNdÕ†¨m* Hbetween when a completion routine queues a parameter block and when your°dONLNd¨∏d* Iprogram’s event loop polls the queue header and processes the data in the°dONLNd`∏ƒÄ* Lparameter block. WakeUpProcess does this by making your program eligible for°dONLNd≠ƒ–A* @execution before the sleep time passed to WaitNextEvent expires.°dONLNdÓ‹ËÑ*NThe only parameter passed to WakeUpProcess is the process serial number of the°dONLNd=ËÙè* Tprocess you want to wake up. You’ll need to get your program’s process serial number°dONLNdíÙÄ* Nwith the GetCurrentProcess function and add it to the extended parameter block°dONLNd· ∂* $used to call asynchronous functions:,
  1703. Courier    °dONLNd$«*#{ Zero the process serial number. }°dONLNd*%0Æ* myPB.myPSN.highLongOfPSN := 0;°dONLNdI1<©* myPB.myPSN.lowLongOfPSN := 0;°dONLNdgIT*/{ Make sure the Process Manager is available. }°dONLNdóU`* 1IF Gestalt(gestaltOSAttr, myFeature) = noErr THEN°dONLNd a&l+ -IF GetCurrentProcess(myPB.myPSN) = noErr THEN°dONLNd˙m5xz+ A; { Either we got the process serial number or it's still zero. }
  1704. °dONLNd<Ñêâ(¨6QThe completion routine would use the process serial number (if available) to wake°dONLNdéêú8* =up your program immediately after queueing a parameter block:    °dONLNdé¥l*D{ Drop the parameter block in the "done" queue for handling later. }°dONLNdµ¿÷* &Enqueue(QElemPtr(pbPtr), @gDoneQueue);°dONLNd8ÕÿÖ*I{ If we have a process serial number (myPSN <> 0), wake up the process. }°dONLNdÇŸ‰Ö* IIF (pbPtr^.myPSN.highLongOfPSN<>0) OR (pbPtr^.myPSN.lowLongOfPSN<>0) THEN°dONLNdÕÂ&˝+ +IF WakeUpProcess(pbPtr^.myPSN) = noErr THEN°dONLNd˚Ò5¸∑+ ; { Wake up the process. }°dONLNd:(46STACK°dONLNd:=)" °dONLNd<w)    SPACE AND°dONLNd%wz); °dONLNd&yñ)CODE°dONLNd*ñô) °dONLNd+ò‘)    EXECUTING°dONLNd4‘◊)< °dONLNd5÷„)AT°dONLNd7„Ê) °dONLNd8Â)    INTERRUPT°dONLNdA"): °dONLNdB!B)LEVEL
  1705. °dONLNdH$é(@6QHave you ever thought about the stack space used by interrupt code? Where does it°dONLNdö$0* 1come from? How much is available? Good questions. x4x&,Times ({) +
  1706. 27(è6The) )Deferred)  )Task) )Manager)  is fully described(ô6.in Chapter 6, “The Deferred Task Manager,” in )üInside(£6Macintosh: Processes.)M•+⁄OA)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1707. March 1993ˇƒ◊#ˇ ˇˇˇˇ#◊ 
  1708. d, Palatino
  1709. .°dONLNdñ#+¥?TWhen interrupt code (including completion routines) is called, it borrows space from°dONLNdU#ñ/* Owhatever stack happens to be in use at the time. That means you have no control°dONLNd•/ñ; * Uover the amount of stack space available, and so should use as little of the stack as°dONLNd˚;ñGæ*     possible.°dONLNdTñ`˜*MAt times, very little stack space is available, because some common Macintosh°dONLNdS`ñlÁ* Ksystem calls temporarily use large portions of the stack. For example, some°dONLNdülñx
  1710. * OQuickDraw routines may leave as little as 1600 bytes of stack space and MoveHHi°dONLNdÔxñÑ * Wcan leave as little as 1024 bytes of stack space under certain conditions. That’s not a°dONLNdGÑñê* Xlot of space to borrow. If your interrupt code will call a routine that uses more than a°dONLNd†êñú˙* Pfew bytes of stack space, you should call the StackSpace function before calling°dONLNdÒúñ®–* that routine.°dONLNdˇ¥ñ¿*PThe typical symptom of using too much stack space is a random crash, because the°dONLNdP¿ñÃ* Qmemory you trash by overflowing the stack could belong to any program — including°dONLNd¢Ãñÿ/* the Macintosh Operating System.°dONLNd¬‰ñ*UHere are the easiest ways to reduce the amount of stack space used by interrupt code:°dONLNdˆ©Ø+•°dONLNdˆµ’) @Don’t use local variables. Either extend your parameter block to°dONLNd[µ◊* ?hold any variables needed by your completion routine or keep an°dONLNdõµ–* @OS queue of buffers that can be used by your completion routine.°dONLNd‹ ©,Ø(H«•°dONLNdfi µ,Õ) ?Try to keep the number of calls from your completion routine to°dONLNd,µ8fi* Cother routines to a minimum. Each routine you call uses part of the°dONLNdb8µD4* stack to build a stack frame.,     Helvetica    °dONLNdÄUñ`œ(|¥PROBLEMS°dONLNdàUœ`“)9 °dONLNdâU—`Î)WITH°dONLNdçUÎ`Ó) °dONLNdéUÌ`)REUSING°dONLNdïU`)/ °dONLNdñU`])    PARAMETER°dONLNdüU]``)? °dONLNd†U_`â)BLOCKS
  1711. °dONLNdß`ñlÒ(à¥KThere are three problems you may run into when you reuse a parameter block:°dONLNdÛlñx˚* Ounfortunate coercions, unfortunate overlap, and garbage in the parameter block.    °dONLNdCÖñê—* Unfortunate°dONLNdNÖ—ê‘); °dONLNdOÖ”ê)    coercions°dONLNdXÖê)1.
  1712. °dONLNdYÑê): Make sure parameter blocks are large enough for every use°dONLNdîêñú(∏¥Ryou’ll put them to. For example, if you use a parameter block for both PPC Toolbox°dONLNdÁúñ®* Scalls and File Manager calls, make sure the parameter block is large enough to hold°dONLNd;®ñ¥* Pany of the parameter blocks used by either manager. One way to do this is with a°dONLNdå¥ñ¿⁄* variant record:,
  1713. Courier    °dONLNdúÕñÿˇ*variantPBRec = RECORD°dONLNd¥Ÿ≥‰˛+ CASE INTEGER OF°dONLNdΔÂ≥&* 1: (PB: ParamBlockRec);°dONLNd‡ÂR˜)ü!{ File Manager parameter blocks }°dONLNdÒ≥¸0(—2: (cInfoPB: CInfoPBRec);°dONLNd ˝≥* 3: (dtPB: DTPBRec);°dONLNd6    ≥0* 4: (hPB: HParamBlockRec);°dONLNdR≥ 0* 5: (cMovePB: CMovePBRec);°dONLNdn!≥,* 6: (wdPB: WDPBRec);°dONLNdÑ-≥8* 7: (fcbPB: FCBPBRec);°dONLNdú9≥DD* 8: (ppcPB: PPCParamBlockRec);°dONLNd∫9RDÌ)ü{ PPC Toolbox parameter block }°dONLNd‹E≥P¬(l—END xBx/,Times ({& +
  1714. 28+md)e)v)e)l)o)p)  )
  1715. March 1993ˇê◊#ˇ ˇˇˇˇ#◊ 
  1716. d,     Helvetica    .°dONLNd$S+6@ Unfortunate°dONLNd S$V); °dONLNd U$z)overlap°dONLNdz$~)%., Palatino
  1717. °dONLNd~$ä): Don’t assume variant record fields with the same name are°dONLNdO$0q(L6Pin exactly the same place in the variant record. If they aren’t, you’ll run into°dONLNd†0<Ó* /problems with overlap. Check first and be sure.    °dONLNd–ITB*Garbage°dONLNd◊IBTE)* °dONLNdÿIDTM)in°dONLNd⁄IMTP)     °dONLNd€IOT_)the°dONLNdfiI_Tb) °dONLNdflIaTì)    parameter°dONLNdËIìTñ)2 °dONLNdÈIïT∞)block°dONLNdÓI∞T∑). 
  1718. °dONLNdH∑T{))When reusing a parameter block, make sure°dONLNdT`w(|6Pdata from the last use doesn’t affect the next call. Always initialize all input°dONLNdk`ly* Mfields. Many programmers go one step further by clearing the entire parameter°dONLNdπlxˆ* 4block to zeros before initializing the input fields.    °dONLNdÓàì\*
  1719. COMPLETION°dONLNd¯à\ì_)D °dONLNd˘à^ìÇ)ORDER°dONLNd˛àÇìÖ)$ °dONLNdˇàÑì¨)MIXUPS
  1720. °dONLNdìüé(ª6TDon’t depend on a service being single-threaded (requests executed one at a time) or°dONLNd[ü´ã* Uon requests being handled in the order they were made (first in, first out). The File°dONLNd±´∑Ö* OManager is single-threaded, but requests may not always be handled in the order°dONLNd∑√k* Hthey were made. The AppleTalk drivers allow multiple requests to execute°dONLNdJ√œR* concurrently.°dONLNdX€Á{*QIf the order of completion is important, don’t use concurrent calls — use chained°dONLNd™ÁÛâ* Rcalls. For example, if you write some data and then expect to read that data back,°dONLNd˝ÛˇÅ* Pdon’t start an asynchronous write and then start an asynchronous read before the°dONLNdNˇ ã* Rwrite completes. If the calls aren’t handled in the order they were made, the read°dONLNd° •* may complete before the write.    °dONLNd¿'2F*POLLING°dONLNd«'F2I). °dONLNd»'H2Å)PROBLEMS
  1721. °dONLNd—2>w(Z6OIf your application that polls for completion works great when it’s the current°dONLNd!>J{* Napplication, but slows down dramatically or stops when it’s in the background,°dONLNdpJVØ*  check for these common problems.    °dONLNdëcn**The°dONLNdîc*n-) °dONLNdïc,ny)canBackground°dONLNd¢cyn|)M °dONLNd£c{nà)bit°dONLNd¶cànè). 
  1722. °dONLNd®bèn})6If you forget to set the canBackground bit in the SIZE°dONLNdflnzè(ñ6Tresource, your application’s event loop won’t get called with null events while your°dONLNd4zÜê* Vapplication is in the background. If you’re depending on null events for polling, your°dONLNdãÜíÚ* 0program won’t poll while it’s in the background.    °dONLNdºü™4*Large°dONLNd¡ü4™7) °dONLNd¬ü6™Ä)WaitNextEvent°dONLNdœüÄ™É)J °dONLNd–üÇ™ù)sleep°dONLNd’üù™†) °dONLNd÷üü™¿)values°dONLNd‹ü¿™«)!. 
  1723. °dONLNdfiû«™á)*Did you crank up the sleep value passed to°dONLNd    ™∂t(“6HWaitNextEvent when your application received a suspend event? Talk about°dONLNdR∂¬^* Jadditional latency! This will do it if you’re polling from the event loop.    °dONLNdùœ⁄1*What°dONLNd°œ1⁄4) °dONLNd¢œ3⁄C)are°dONLNd•œC⁄F) °dONLNd¶œE⁄_)other°dONLNd´œ_⁄b) °dONLNd¨œa⁄û) applications°dONLNd∏œû⁄°)= °dONLNdπœ†⁄ª)doing°dONLNd未⁄ƒ)? 
  1724. °dONLNd¿Œƒ⁄u)    &Other applications can slow your event°dONLNdÁ⁄ÊÉ(6Nhandling down by not calling WaitNextEvent regularly. If your polling from the°dONLNd6ÊÚf* Mevent loop slows down because of that, there’s not a lot you can do about it.°dONLNdÑ˛
  1725. é*UIf your polling stops when another application is in the foreground, it could be that°dONLNd⁄
  1726. Ç* Othe other application isn’t handling its update events. See Macintosh Technical°dONLNd    *"7* ?Note “Pending Update Perils” for a description of this problem.    °dONLNd    j/::*Polling°dONLNd    q/::=)" °dONLNd    r/<:R)from°dONLNd    v/R:U) °dONLNd    w/T:h)VBL°dONLNd    z/h:k) °dONLNd    {/j:Ü)tasks°dONLNd    Ä/Ü:â) °dONLNd    Å/à:ë)in°dONLNd    É/ë:î)     °dONLNd    Ñ/ì:ü)an°dONLNd    Ü/ü:¢)  °dONLNd    á/°:·)application’s°dONLNd    î/·:‰)@ °dONLNd    ï/„:˚)heap°dONLNd    ô/˚:). 
  1727. °dONLNd    õ.:ë)VBL tasks in your application’s°dONLNd    ª:FL(b6Aheap are removed from the VBL queue during a context switch when °dONLNd    ¸:LF`(bjyour x4x&,Times +ø +
  1728. 29(Ú]A)S)Y)N)C)H)R)O)N)O)U)S) )R)O)U)T)I)N)E)S) )O)N) )T)H)E) )M)A)C)I)N)T)O)S)H)  )
  1729. March 1993ˇ0◊#ˇ ˇˇˇˇ#◊ 
  1730. d, Palatino
  1731. .°dONLNdñ$    +¥@Oapplication is switched out and are added to the VBL queue when your applicaton°dONLNdP$ñ0Í* Kis switched back in. VBL tasks in the system heap are unaffected by context°dONLNdú0ñ<¡*     switches.°dONLNd¶HñT *SIf you poll from a VBL task and don’t want polling to stop when your application is°dONLNd˙Tñ`√* Aswitched out, make sure you put your VBL task in the system heap.,     Helvetica °dONLNd<qñ†*C°dONLNd=q†™)
  1732. O°dONLNd>q™µ)
  1733. M°dONLNd?qµæ) P°dONLNd@qæΔ)    L°dONLNdAqΔœ)E°dONLNdBqœ◊)    T°dONLNdCq◊€)I°dONLNdDq€Â)O°dONLNdEqÂÔ)
  1734. N
  1735. °dONLNdGÉñè    (´¥OThere are many situations where synchronous calls work well. However, there are°dONLNdóèñõ˚* Otimes when asynchronous calls must be used to prevent system deadlock or to let°dONLNdÁõñß„* Iyour program continue execution while waiting for time-consuming calls to°dONLNd1ßñ≥ı* Lcomplete. Understanding the material covered in this article should help you°dONLNd~≥ñø* Ounderstand when to use asynchronous calls and give you the techniques needed to°dONLNdŒøñÀ˛* Mavoid the problems commonly encountered in code that executes asynchronously. °dONLNdÂüÛ +    ' RECOMMENDED°dONLNd' Û)l °dONLNd(ÂÛK)READING"˚¥# ˚µ˚,"˚-#"¸¥"¸-    °dONLNd0˙ü¢(!Ω•°dONLNd2˙¨Û)Inside Macintosh °dONLNdC˙Û›)G8Volume II (Addison-Wesley, 1985), Chapter 6, “The Device"¥"-°dONLNd|¨≈(- CManager,” Chapter 10, “The AppleTalk Manager,” and Chapter 13, “The"#¥ "#- °dONLNd¿¨* Operating System Utilities.”"/¥ "/- °dONLNd›$ü/¢(KΩ•°dONLNdfl$¨/Û)Inside Macintosh °dONLNd$Û/Ó)G;Volume V (Addison-Wesley, 1991), Chapter 28, “The AppleTalk";¥";-°dONLNd,0¨;’(W     Manager.”"M¥ "M- °dONLNd6BüM¢(iΩ•°dONLNd8B¨MÛ)Inside Macintosh °dONLNdIBÛM÷)G5Volume VI (Addison-Wesley, 1992), Chapter 7, “The PPC"Y¥"Y-°dONLNdÄN¨YÊ(u KToolbox,” Chapter 29, “The Process Manager,” and Chapter 32, “The AppleTalk"k¥ "k- °dONLNdÃZ¨e’*     Manager.”"w¥ "w- °dONLNd÷lüw¢(ìΩ•°dONLNdÿl¨w )Inside Macintosh: Files °dONLNdl wÍ)_6(Addison-Wesley, 1992), Chapter 2, “The File Manager.”"É¥"É-°dONLNd'x¨É‹(ü  Previously, °dONLNd3x‹É#)0Inside Macintosh °dONLNdDx#Éx)GVolume II, Chapter 4."ï¥ "ï- °dONLNdZäüï¢(±Ω•°dONLNd\ä¨ï&)Inside Macintosh: Processes  °dONLNdyä&ïÔ)z0(Addison-Wesley, 1992), Chapter 6, “The Deferred"°¥"°-°dONLNd´ñ¨°(Ω Task Manager.” Previously, °dONLNdΔñ°d)qInside Macintosh °dONLNd◊ñd°Œ)G Volume V, Chapter 25 and"≥¥ "≥- °dONLNdÚ¢¨≠–(… GMacintosh Technical Note #320, “Deferred Task Traps, Truths, and Tips.”"ø¥ "ø- °dONLNd:¥üø¢(€Ω•°dONLNd<¥¨ø„)MMacintosh Technical Notes “MultiFinder Miscellanea” (formerly #180), “Setting"À¥"À-°dONLNd㿨ÀÊ* Land Restoring A5” (formerly #208), “NuBus Interrupt Latency (I Was a Teenage"›¥ "›- °dONLNdÿè◊⁄* K DMA Junkie)” (formerly #221), and “Pending Update Perils” (formerly #304)."È¥ "È- "¥# µ,"-#"ı¥"ı- xBx/,Times ({& +
  1736. 30+ã
  1737. THANKS)" )TO)  )OUR) )    TECHNICAL)/ )    REVIEWERS(ô¥4Scott Boyd, Neil Day, Martin Minow, Gordon Sheridan•(ÚDd)e)v)e)l)o)p)  )
  1738. March 1993ˇ3◊#ˇ ˇˇˇˇ#◊ 
  1739. d,     Helvetica .°dONLNd5ñCÔ+¥^    SOMEWHERE°dONLNd    5ÔCÛ)Y °dONLNd
  1740. 5ÚC)IN°dONLNdBñP·(k¥    QUICKTIME    °dONLNd]ñh´*TOP°dONLNd]´hÆ) °dONLNd]≠hπ)10°dONLNdiñt–(ꥠ   QUICKTIME°dONLNd(i–t”): °dONLNd)i“tÍ)TIPS066»∞
  1741. 77«ØòÄ<êxHH˝á‡ˇˇˇˇˇˇÓÓÓÓÓÓ››››››ÃÃÃÃÃꪪªªª™™™™™™ôôôôôôààààààwwwwww    ffffff
  1742. UUUUUU DDDDDD 333333""""""êx77«Ø'À˛ªÀªÀªÀªÀªÀ˛ª˛Àıª∫¸ª∫ª∫ª∫ª∫ªı∫™∫∫Óª´˛ª´ªª´´ª¸´ª´ªÚ´™´´¸™*ªÀªÀªÀªÀªÀªÀÀªªÀªÀ˜ª∫ªª∫∫¯ª∫˛ª˛∫ª˘∫™∫Ôª´˛ª´´˚ª´™˛´ª´ªÛ´™´˛™´™™!Àª˛Àª˛ÀªÀÀ˛ªÀ˜ªÀ˝ª∫¸ª∫¯ªÙ∫ͪ´˝ª´´˛ª´˛ª´ª¸´ª˙´™˛´˝™ªÀª˛ÀªÀ¸ªÀªÀªÀϪ∫ªª∫ªª∫ªªı∫ªª´fiª´´™ª˜´™´™´˝™ÓÀ˙ªÀ˜ª˛∫ª∫ª∫ª˛∫ªˆ∫.ºªºªºªº˛ªºªºªºªºªª´ª´ª´ª´˛ª´ª´ª´ª´ªÛ´™˛´¸™(¸ÀªÀ˚ªÀªÀªÀ˜ª∫˛ª∫ª∫ªª˝∫ª∫∫ªª˜∫™∫∫™ºªªººªªº˜ª´´ªª´´˛ª´´ªÔ´™´˜™$ÀªÀªÀªÀ˛ªÀ˙ªÀ˝ª∫˘ª∫∫˛ª∫ªÒ∫˝™∫"¯ª´˙ª´ª´ª´ª´ª˛´ª˚´ª™˝´˛™´™´Ù™&ªÀª˛À˙ªÀªÀıª∫ª∫ª∫ª∫ª˘∫™˙∫™˛∫™™∫™Óª˘´ª™¸´˛ª´™´˛™´™´™´˛™´™´˚™.À˛ªÀªÀªÀªÀª˛ÀªÀ˝ª∫ª∫¸ª∫∫ª¸À¸∫™∫ª˜∫™∫™∫™!Ôª´´ª˜´ ªºªªººªª´´™ö™˛´™˛´™´˙™+ıª∫À∫˙ª∫˛ª∫ª∫ªª˛ÃÀÃÀÃÀª∫∫ô˝∫™™∫™∫∫™∫¸™"¯ª´ªª´ª˛´ª˙´ª˛´¯ºªª´´ô™™´ı™öö$˝ªÀ¯ªÀ˘ª∫ª∫ªªÀ˘Ã˝À∫™˝∫™™˚∫™∫˛™)¯ª´ª´¸ª´ªª´´ª˛´ªºÃ˛ºÃºÃ˝º˛ª˝™´˛™´¯™Ȫ∫ªª¯ÃÀÃ˝À˚∫™˝∫™™∫˝™#˚ª´ª´ª´´˚ª´ª¸´˚ºÃºÃºÃ˝ºªºª´Ù™˛ö(ÀªÀªÀªÀ¸ªÀªÀ˝ª∫ª∫∫ªÃÀ¯ÃÀ¸ÃÀÀı∫™∫˛™%˛ª´¸ª´ª´¸ª˚´ºÀ¯ºÃ˚ºªº´˝™´˛™´˙™"˜ª∫˛ª∫ª¸∫ªª€À˙ÃÀÃÀ˙ÃÀ˙∫™∫∫˙™˝ª´ª˙´ª˘´˙ºªª´¯ºêªÚ™ö2ªªÀªÀ˝ª∫˛ª∫˛ª∫ª∫∫ÀÃÃÀÃÀ∫®ááwx™ªÃÀÀ˛ÃÀÀ∫™™ˆ∫˛™-˝´ª˙´ª´ª´ª´ª´´˝ºª∫áf˛VWgz´ºÃ˝ºª™™´™´ˆ™ö!Ôª    ∫ªªÀÀÃÀπÜe˛TUUffwäªÀÃ˛À˛ª˘∫˚™.˛´ª´ª´ª¸´ª´ª˝´˝ºªáfEDD4DEUUVWä˝ºªºªª™´ˆ™ö'ªªÀªÀ˚ª∫˘ª˝ÀπveTT˛DT˛Uewö˚Àˆ∫™™∫™/ª´˝ª´ªª¯´ª¸ºßeUD4344EDEEUVW¨˛ºª´™´™´˘™ö™ö1˚ª∫ª∫ªª∫∫ª∫˛ª∫º˝ÀóeTD˛C DDTTUTTDúÃÀÀ˛∫™∫™˝∫˙™Ó´˝ºªáUD43˝4 DDEDC4Xººªª´Ù™öö-˜ªÀ˚ª∫ªÀÃ˛ÀñUT˛C˝D    TTDC34ãÀÃÀ˛∫™∫™˛∫™∫¸™2ª´˛ª
  1743. ´ª´ª´ª´ª´ªª˛´˝ºªÜUD˛3˛4˝D    33"JÀºª´™´˘™ö™˛ö0¯ª∫ªª∫ª∫ªª∫ªÀÀÃÀ ÜTTUTT˛C˛DCC2"6ÃÀÀ∫∫™∫™∫˘™©©+´ª´˛ª¸´ª˚´ ¨ºªºª∫fUFgffD˛4D4D3"!≠˛ªˆ™˝ö2˝ªÀ˝ª∫˘ªÃÀÃÀÀπeUfvfwveTDTDUTD2#å˛À∫∫™∫™∫™∫˚™©)ª´˛ª´ªˆ´˛º ªºßUVfTEVgwU˛EVxwT#lºªª˜™¸ö.ªÀ˘ª∫˙ª¸ÀÜUUTC3EfwuUUfyª∫óT{˛À∫˛™∫˝™©™˝©1˛ª´´ªı´ººªºπeEED34EVgfEVhö™òwDj˛ª™ö˛™ö˛™˝öôô-˙ª ∫ª∫ª∫ª∫ª∫∫ªÃ˛À∑e˝TUfvveDfâ©Üfe2Y˛À˘™˚©ô1˛ª´ªªı´˛ºªóEDEFgwxàfT4WâáUET"Hºªª™™ö˛™ö™ööôö˛ô2˘ª˛∫˛ª∫ª∫ªÀÃÀ ÖTDEwâ™∫©ÖC3VôveUd2GÀÀ∫¸™©™©™˝©ô©1´´ªª´ªı´ººª∫uD45Vgxöòe3#GògàxvC6ºª™™ö™¸ö˛ôöôââ1¯ª∫∫ªª∫ª∫ªª˛À…uTC3DUwáuC33WÜwâ∫®tEºª∫˛™∫™™˘©ò5ª´˛ª´ª´´™˛´™´™´´˛º    πeD3##4FUC˛#
  1744. 6vVgäòv4ú∫™ˆöôôöò2˚ª˛∫ª˘∫˛À…eTC223CC22334vefàÜe3å∫™™©˛™    ©™©©ô©ô©ôòÔ´ººªπeD3#"˘#FUVgu3#l∫˘ö˚ôâô0˙ª∫ª™ª˚∫™ªÀÃ∏uTC˛2˛3C3325eTfd2"{∫™©¸™˝©ô©òôô.Ù´™˛´™´ªÃ®fUD3#"##D33"##D4DD2[™¸ö˛ôöô˝âôâ5∫˛ª˙∫ª˚∫òªÀ∏veDC˛2EdC33C2D˛C2"k∫©™©©ô©òôô©ôôòôòô,˚´˛™˛´˛™
  1745. ´™™yö´®geD3˛#FT44DEC%D3#"[∫˝öôˆâ2ªª∫ªª˙∫ª¸∫àvö®áuTDC3EfUfàvwÜUdTB""{∫˛™©©òôòô˙ò3˙´™˚´˛™©fUzòwfUD44EU5iªôö´gUD3"#k™™ö˛ôââà˛âàô˛â*ªª∫ªÙ∫πeUâòweTTCCUT3VwöªÀ©uTT23{π˝©ôô˜ò5˚´˛™˛´$™´™´™™TFàxweDD44DC#44h´ªªvEfD4z™öôôöô¸âà˛âàà2∫∫ª˙∫ª¸∫™∫tUegveT˝DCC3DUw´ªÜfwdD佩ô©ôô˛òô¸ò1¸´™´´™˝´¸™uD4WwUD¸4D44EFhâvVwe5zöö¸ôââôâôâô˛â.Ò∫™™¶TDfveT˝CDT˛UefwvfáuEâ©©ôòôòôòôòôôòôôòò1™˛´™´ı™ßUDFfUD˝4FUgfgwwhvgwe5äöôôâôâô˛âôâô˝â-ªÒ∫™πeTEveTDDCDgòòóö™©ôóvwuFô©©ôôò˛ôò˚ôòò2˙´™™´´˙™´uD5gfT˛4Ei™áfx㪴áfVuFöâ˛ôâ˛ô˛âôâô˛â,∫!™∫ßeewvdTCDEeeTDUg´∫ÜvftW©ôô©ô©ô©ò¸ôòôòô4™´™˛´˛™´˛™´˚™ôáwfUD44ED4D4DEWòffVTG˝ôâô¸âô¸âôÌ∫àóvuTDDT˝D    TTDwfvUTW©ô/˚™´˙™´¸™ºªòwfUDEEDDEVgwUwgvUDXôôâô˚âôâôâô˛âÌ∫ªÀ®áve˝T DUwô©óvwÜeTx©ô+™´™´™´˛™´˙™´™™´∫ààwfUEEDDEVxâágxwUFâ¸ôÙâ&Ú∫™˝∫ª∫ôòáveUT˛D
  1746. Ufwáwàáeh©©˚ô©¯ôò+´´™™˛´™˙´¸™´ªôàxwfUDD44DEgghwwUi¸ôââôˆâ-Ò∫"™™∫∫™∫òàááveTDCCDUUegávfâ©ô©ô©òôô©ò¸ôòôôò-¸™´™´™´˛™´˙™´˝àwfUD˛4EUUWwfWôö˜ôâô˝âàô)˜∫ª˚∫™˝∫®áààòvuTTUUfvffvex˛©ô©ô©ôôò˜ô4™™´™™´´˛™´˛™´˛™´˛™òwxàâàwUUVfgxwgfVy¯ôâôâôâô¸â/™˛∫™˙∫™∫∫˙™ßwwàòòáÜvwwàôòvvf˝ô©ô©ô©˘ôòòôô™´Ì™òffgââàâàââö™òwUW¯ôâô˜â+Ù∫™∫™™∫˝™®vfwàô˛©˝™©ádh˝©ô˛©ô©˚ôò˛ôò,
  1747. ´™´´™™´™´™´˝™ö¸™
  1748. öòfVVgâöôöö˝™wTXıôâ˛ô¸â"ı∫¯™©óvUUfⲩ™©™™©Üdh˝ô©¯ôòô¸ò#Ó™ö™®f˝Uhö™˝ö™ôvDiôâô˙âô˛â¸ôàâ"˘™¸∫¸™ ∫™™ßTDTTUfà™∫˛™∫®uDyÔôòôô/™öö˛™öÛ™ÜD˛4EFgä´˛™´òe4jôâ¸ôâ˛ôâôô˛âô˛â#ôô©Ô™    uDDCCDUVx™˝∫ßdDyˆôò¸ôòôòò/ââ˙ö™ö˛™˛ö™ö™öeD4˛34EVz˝´
  1749. óD5zôôââôâô˛âô˜â/˝©˘™∫˚™©©eTCDDCCUVx™ªª∫ñT5âô©¸ôòòàòô˛òôòô˛ò3ôô˙ö¸™öö˛™#ö®TD44DD34EVy´ª∫vD5äôôâôâôââàâôâàôàâ¸à2ô©™™©¸™©˛™©˝™©¶DTT˛D CCUUfâªπuSEâ˛ô©˛ôòòôô˜ò/ô˛öôô˝öô˝ö™ö™ööÜ4¸D44U4Vgö®fC6xââô˛âô˜â˝à.©©™©©ôÛ™ÜDDTT˝D S3DgàóuSGóâôò¸ôò˛ôòôòôòô˛ò.ö¸ô˛ö™ö˛™ö™™ôáwUDDEDD4D53##WwwfD8ßiˆâà˛â¸à#˙©™©¸™
  1750. ©®áveUDTDDT˝D
  1751. C33fwveTj•WÌò0˜ö™™ôôáfU˛D34¸D45D34VgfUEãs6ôâàâàâ˛àâàâàââ¸à7™™©©™˝©ááwvfe˛TCDC3DTDDTDFeDDfvvUgπt5©òôòô˛òô˘òàòà:™™˛ö™ôáw˛U˛E4ED˛434DD4DDFfUUVgfVwgß5˝âôâàà˛âà˛âàâ˛à,˝™©òwvU˙TUTCDDCCDTCDTFáwáuffwuh∫U¸òôıòàà+˝öáVUED¸EDDED34433¸4 FwxôeVfgeZ´fy˛âÛàxx5™©™®u¸TUU˛TDUT˝CDDCDCCFeUfTUfwujÀvôòòô˙òàòàò˝àá0ôòöwU˝EDEEUEE4ED¯4 36T4D4EVgejªg¸âàâàâàââ˛à¸x1©©ßeTUTUU˛TUU˝T¸C˝DCETCDDUUfá™…eàòòô˝òà˛ò˝à˝á4ôôÜUDEEUEUDDEUEDEED˚4D44UDDEUUEhöª®4W˛â˛àâ˚àxx˝w6©©ueUUeUU˛TUe˛TUTC˘DeDTUeTVäÀ ∂24gô˝òàòàòàòàà˝áw2öófVUEVUU¸EU˛ED¸4¸D4˛E
  1752. DGö™ôñ"$yâ˙àxàxàx˛wg5©Üee˛UeUU˛TDDTTUTCC˙DC¸DVáefÖ2!"W¸ò àòòààòààááww6òfUV˝U¸E3#DEED˝4D4DD4D4434434"#D"#Wàxxà¸xàxxwxww1ófefeTee¸US"D˛TDDC˝DTDDCDC4D2"!"32!#Wôò˘à¸á9vVUVUUV˛U˛E D""4DD433""#˛34D43343""#Fxàxxàxà˝x˛w2vfefeUUe˛U˛TB!"3C˛32!"˛23D˛C332!!!˝#F¯à˝á7    ffUVUUEVUU˛EUC"˛"#""#˛43"$2¸˝#Gxàxxàà˛x˛w7v¸eUfe˝UeT22˛!"22!¸"4DCC14B!!!#g˝àáàááwáw6ffU¸V"UUEUEUUC3""#"""#DD42$3"˛$Xà˚x˛w:f˝efefeeUeTUdTC322!˛" !"!!""4DCC3C"˛!
  1753. 4g˛à˝áww3    ffUVfVUVVf˛UEUD4434"¯ #4D4#D"˛#G˝x˝w8f˛effeffwueeUeTDCDDC˛"!!"!!""4TDCD2!"!˛    "4x˙á9ffVVfVfVfgvVVUfED44DD3#"˙#5D3D"˛6xx˛wxw4vfeeffuffevveUeUTSDUTC22˙! "4TCD2!""˝"#g˚á5fVf˛VfVfUVgfUVUED4EED43"˙#44E2"˛˛˛"6wx˝w:vfv˛f vfveVávefUeTD˛U TCB2"!"!!""3TDB!"2!!!""#w¸á:gffVffgVgVWwfUV˛UE˛UED3""˚
  1754. #D42""˛˛H˛wxw8˛vffvw˛vwáv¸eUeUUTT322"!"!""2DTB!"2˛!!˝!6áw˛á6fgffVfgf˛gxfV˛UVV˛UDD33""¸    "5DC#"¸˛$¸w9vwvffvwvfvwàvef˛e˛UTUTCC22"!˝"ETC!"22""!!!"!#g˝á7fg˝fgfVgwxwf˛VUEUU˛ED3##""˛    "%UC"#""˚"#7˝w3vwvffvfvfwwàáv˝eT¸UTD˛2¸"4US!"22""¸!!"5˝á9fg¸fwfgxywfVVUUEEUUEEDD3#˛"    "$UD"#3˛"˝ "$gwwx7vwvf˛vwvvàâóvf˝eUeUU˛TC˝2˛"3Ud2"3C22¸"!!"!"2g˛á7ggwfgfgwvgxäáf˛V˚UEUED##¸"#FU"#3#˛"˛"
  1755. #Gwxx7vw˛v    wvwvwwöóvf¸eUeUeUUSC˛2 ""2#UeB!4C322˚"!!"35˛á3fgwffgfgwgxäóff˛V¸UVUUD43#¸"FVB"#4#˘"    #5wwx7vwá˝vwwvàö®˛v˚ef˛eUTC23˝2EfS"3C2322"2""31""!"4fwáá3ggwf˝gwfxã®fgf˘V˛UED3˛#
  1756. ""5fS""433#¸"#""$f˛w7vwá˝v wwvwößvwwvee¸f˝eTC23˛2    4fc!"3C332˝"
  1757. 32""!4uwwá9fgwgfgf˛gxäógxxvfV˝fVU˛VT3##"#"$gT"##3#3#˚""%vgwx=vwávvwv˛wàäówòòávffvvfeeffedC˛3224wu2"3C˛322"2˛"2!5ágáá:ggàf˝gwwxäáxâààwffgf˝VffUC3#3##$ge3"34˛3##˝"""$xWww:vwávvwvwwáàöóâ©òòáffv¸fvveS2˛323gvB"3C3CC322"2˝"#xVˇw6wgàwf˛g˛xöáâôàww˚fVgfgfT3##33#WwC"#43443##˚"hFgw6wwàÜvvwwáààôòôòáff˝vwwvv˛wuC¸3gác"3DC3C˛3˚2!xUwá=wgywf˛g3xâàâàöòvVVgfggwwggwxxwS#433#GwT"#43#D3#3#""##"YDhw9wwàá˛v    wwôòàô©ávf¸v˝w!áàáwd23C3CVád23DC3DC33232322!Wegw:wgxwf˛gwâàâäôw˝f˝g$wwxààwge34D#36we3#43$D3##"#"##"7fgw
  1758. d°dONLNd0≥æ4(⁄6JOHN°dONLNd4≥4æ7) °dONLNd5≥6æU)WANG, Palatino
  1759. °dONLNd:ÿ‰˝(61To inaugurate this new column on QuickTime, we’ll°dONLNdl‰€* ,take a look at ten useful tips for QuickTime°dONLNdô¸Ô* 0application developers. This is certainly not an°dONLNd ¸|* exhaustive list, but it °dONLNd‚¸|Ñ)dis°dONLNd‰¸Ñ’) an important one.°dONLNd¯](66Here’s the list:°dONLNd
  1760.  ,Ó*/10.  Working around data reference limitations.°dONLNd;2>$+9.°dONLNd>2)>‘)"Using GetMovieNextInterestingTime.°dONLNdbDP$(l:8.°dONLNdeD)Pñ)Not calling ExitMovies.°dONLNd~Vb$(~:7.°dONLNdÅV)b∏) Getting a movie’s unscaled size.°dONLNd£ht$(ê:6.°dONLNd¶h)tfi)%Avoiding the Movie Toolbox when using°dONLNdÕt)Ä≥* the standard movie controller.°dONLNdÌÜí$(Æ:5.°dONLNdÜ*íÎ))Prerolling a movie for improved playback.°dONLNdò§$(¿:4.°dONLNdò)§Ë)&Using CustomGetFilePreview with custom°dONLNdE§)∞N* dialogs.°dONLNdO∂¬$(fi:3.°dONLNdR∂)¬÷)%Conditionally registering a component°dONLNdy¬)Œø*  that requires a hardware device.°dONLNdõ‘‡$(¸:2.°dONLNdû‘)‡⁄)&Detaching a movie controller properly.°dONLNdΔÊÚ$(:1.°dONLNd…Ê)Ú√)Calling MaxApplZone from every°dONLNdÈÚ)˛b* application.°dONLNdˆÛ(,62Some of the tips describe pitfalls that need to be°dONLNd)Ù* 0avoided, while others are simply clarifications.°dONLNdZ(∑* %Let’s take a closer look at each one.°dONLNdÄ$%(@610.°dONLNdÑ*$Ô)*Working around data reference limitations.°dONLNdØ*6Î(R6.A current limitation of QuickTime is that each°dONLNdfi6B¸* 1media can have only one data reference to a media°dONLNdBN* 5data file. This isn’t a problem except when you start°dONLNdFNZÌ* 0cutting and pasting between tracks that refer to°dONLNdwZf* 4different media. You’ll then be required to copy the°dONLNd¨fr* 3media data from one media data file to another. For°dONLNd‡r~* 0example, InsertTrackSegment will copy media data°dONLNd~ä* 5between media if the tracks refer to different media.°dONLNdGêúª* Calls like GetMediaDataRefCount,°dONLNdhú®ˆ* )AddMediaDataRef, and GetMediaDataRef will°dONLNdí®¥˚* 3reflect the “one data reference” limitation by only°dONLNdΔ¥¿Ô* 1accepting index values of 1. You can’t replace an°dONLNd¯¿Ãˇ* 3existing media data reference in QuickTime 1.0, but°dONLNd,Ãÿ÷* *you can in QuickTime 1.5, with a new call,°dONLNdWÿ‰˙* /SetMediaDataRef. Using this routine is a common°dONLNdá‰˜* /way of manually resolving media data references°dONLNd∑¸˘* /that may have been moved by an application. For°dONLNdÁ¸Ê* -example, if you move a movie data file onto a°dONLNd* 4different volume, you can update the alias using the°dONLNdJ ı* /Alias Manager and update the data reference for°dONLNdz ,π* the movie with SetMediaDataRef.°dONLNdö8Dœ*&9.  Using GetMovieNextInterestingTime.°dONLNd¡JVˆ*/Since QuickTime is time based rather than frame°dONLNdJˆV˙)fi-°dONLNdÒVbÒ(~6.number based in the way it deals with temporal°dONLNd bn‹* +video data, a common question is how to get°dONLNdLnz* 3information about movie frames, such as frame rate.°dONLNdÄzÜ* 1The answer is to use GetMovieNextInterestingTime.°dONLNd≤Üí¸* 3This function allows you to step quickly and easily°dONLNdÊíû¸* 2through interesting times in a movie. For example,°dONLNd    û™Ò* 1for an estimate of the frame rate of a movie, you°dONLNd    K™∂* 2could use GetMovieNextInterestingTime to count the°dONLNd    ~∂¬* 4total number of frames in the movie and divide it by°dONLNd    ≥¬Œ* 4the total duration of the movie. Likewise, you could°dONLNd    ËŒ⁄˘* /use GetMovieNextInterestingTime to identify the°dONLNd
  1761. ⁄ÊÓ* /600th frame in a movie. Since the internal data°dONLNd
  1762. HÊÚÍ* .structure of QuickTime movies is optimized for°dONLNd
  1763. wÚ˛≥* #accessing this type of information,°dONLNd
  1764. õ˛
  1765. ‰* )GetMovieNextInterestingTime and the other°dONLNd
  1766. ≈
  1767. Û* 0GetNextInterestingTime calls are very efficient.°dONLNd
  1768. ˆ".ë*.  Not calling ExitMovies.°dONLNd 4@*1One recommendation that contradicts QuickTime 1.0°dONLNd D@L¸* 2documentation is that applications should not call x4x*, New York +Û +
  1769. 31(è6
  1770. JOHN WANG )41 (AppleLink WANG.JY) is enjoying his youth in the(ô6>playpen of the Printing, Imaging, and Graphics (PIGs) group in*
  1771. >Developer Technical Support at Apple. When he’s not engaged in*
  1772. Bpiglet activities, he can be found on a golf course or hogging the*
  1773. @road with his Mazda Miata. No one has trouble identifying John’s*
  1774. Bcar, since he often cruises the California highways, with his dog.*
  1775. 2Skate, In return, Skate promises to drive safely.•(ÚS.SOMEWHERE IN QUICKTIME: TOP 10 QUICKTIME TIPS )ª )
  1776. March 1993ˇ~◊#ˇ ˇˇˇˇ#◊ 
  1777. d, Palatino
  1778. .°dONLNd$Ù+6@0ExitMovies before quitting. QuickTime calls this°dONLNd1$0* 5function at ExitToShell time, and it’s safer to allow°dONLNdg0<* 2QuickTime to release private storage and component°dONLNdö<HÚ* 0connections at that time. This prevents problems°dONLNdÀHTˆ* 2such as closing components in the wrong order. For°dONLNd˛T`˚* 1example, the proper way to clean up after a movie°dONLNd0`l* 6that uses a standard movie controller is to dispose of°dONLNdglx¯* 3the movie controller first, and then dispose of the°dONLNdõxÑÚ* 1movie. If done in the reverse order, there may be°dONLNdÕÑêy* adverse consequences.°dONLNd„ú®≥*$7.  Getting a movie’s unscaled size.°dONLNdÆ∫*1An application should save the movie box obtained°dONLNd:∫Δ˛* /with GetMovieBox when a movie is loaded so that°dONLNdjΔ“* 6it can retrieve the intended offset and scaling of the°dONLNd°“fiˆ* .movie for playback. However, some applications°dONLNd–fiÍı* 1may also want to get the unscaled size, and there°dONLNd͈Œ* +isn’t an intuitive way to get it. Since the°dONLNd.ˆÙ* /programmatical effect of calling SetMovieBox is°dONLNd^* 3that the movie matrix is changed to reflect the new°dONLNdí˝* 4offset and scaling, you can easily get the movie box°dONLNd«&* 4for an unscaled movie by setting the movie matrix to°dONLNd¸&2‚* .the identity matrix; using the utility routine°dONLNd+2>Ô* +SetIdentityMatrix along with SetMovieMatrix°dONLNdW>J˘* /accomplishes this. Then GetMovieBox will return°dONLNdáJVõ* the unscaled size and offsets.°dONLNd¶\h˘*2However, there’s a loophole. If a track inside the°dONLNdŸht‡* .movie is scaled, there may still be scaling in°dONLNdtÄ˝* 0playback since QuickTime supports transformation°dONLNd9Äå˚* 2matrices for movies and for tracks within a movie.°dONLNdlåò* 2Therefore, when working with scaling, applications°dONLNdüò§* 5need to pay attention not only to the movie’s scaling°dONLNd’§∞¨* #but to the tracks’ scaling as well.°dONLNd˘º»Î*-6.  Avoiding the Movie Toolbox when using the°dONLNd'»$‘ú+ standard movie controller.°dONLNdB⁄ÊÎ(6-When using the standard movie controller, you°dONLNdqÊÚ* 2should almost never use any Movie Toolbox routines°dONLNd§Ú˛‰* +that control movie playback or change movie°dONLNd–˛
  1779. ˇ* 3characteristics. For example, it would be a mistake°dONLNd
  1780. * 5to call StartMovie to start playing a movie. Instead,°dONLNd:"˜* /use the movie controller equivalent, MCDoAction°dONLNdj".˜* .with mcActionPlay. Calling StartMovie directly°dONLNdô.:˜* 2causes the movie to play but with the controller’s°dONLNdÃ:F* 2button in the pause state, not reflecting that the°dONLNd$(@65movie is playing back. Similarly, to set looping, you°dONLNd6$0¸* -would use MCDoAction with mcActionSetLooping.°dONLNdd0<¸* 1Bypassing the movie controller by using the Movie°dONLNdñ<H * 6Toolbox routines directly on a movie controlled with a°dONLNdÕHT˙* 2movie controller can have dire consequences. As an°dONLNd    T` * 7example, if you set looping for a movie before creating°dONLNd    8`l* 2a controller with NewMovieController, you’ll cause°dONLNd    klx˝* 3the Macintosh to crash. Don’t let it happen to you!°dONLNd    †ÑêÂ*-5.  Prerolling a movie for improved playback.°dONLNd    Œñ¢Û*.Prerolling can improve playback performance by°dONLNd    ˝¢Æ«* $allowing QuickTime to do preliminary°dONLNd
  1781. "Æ∫Ò* 0initialization. Since PrerollMovie is passed the°dONLNd
  1782. S∫Δ˜* 3movie time and rate, it can fill buffers and caches°dONLNd
  1783. áΔ“¸* 2optimally to prevent initial stuttering. Normally,°dONLNd
  1784. ∫“fiÛ* .QuickTime automatically prerolls the movie for°dONLNd
  1785. ÈfiÍ˝* 3you. For example, if you call StartMovie, you don’t°dONLNd ͈Ú* 0need to also call PrerollMovie, since StartMovie°dONLNd NˆÁ* -prerolls the movie for you. The QuickTime 1.5°dONLNd |* 3documentation describing the StartMovie call states°dONLNd ∞€* *this clearly. Likewise, the standard movie°dONLNd €&* 4controller is optimized to preroll whenever the user°dONLNd &2˜* 1starts a movie with the keyboard or mouse. If you°dONLNd B2>Ú* 1call PrerollMovie in these situations, the second°dONLNd t>J˜* /PrerollMovie is redundant and will simply waste°dONLNd §JV·* /time. In all other cases, prerolling by calling°dONLNd ‘VbÎ* -PrerollMovie is recommended before initiating°dONLNdbn * &playback. For example, you should call°dONLNd)nz∫* !PrerollMovie before SetMovieRate.°dONLNdKÜí,*4.  U°dONLNdPÜ,í0)s°dONLNdQÜ0í
  1786. )-ing CustomGetFilePreview with custom dialogs.°dONLNdò§(¿60If you use CustomGetFilePreview with custom DLOG°dONLNd∞§∞Ú* 0and DITL resources, you should be aware of a bug°dONLNd·∞º* 0with the System 7 pop-up menu CDEF: pop-up menus°dONLNdº»˛* 2used in conjunction with black-and-white grafPorts°dONLNdE»‘* 3are shifted to the wrong location within the dialog°dONLNdy‘‡* 4box. The simple workaround is to force the dialog to°dONLNdƇÏ˚* 3be a cGrafPort by adding a 'dctb' resource with the°dONLNd‚ϯ¯* /same ID as the DLOG and DITL resources. You can°dONLNd¯Ë* /easily create a 'dctb' resource with ResEdit by°dONLNdBÁ* -selecting the Custom color button in the DLOG°dONLNdp˛* 1resource template window. For more information on°dONLNd¢(* 3the 'dctb' resource, see the Dialog Manager chapter°dONLNd÷(4#* in °dONLNdŸ(#4˚) .Inside Macintosh: Macintosh Toolbox Essentials°dONLNd4@2(\6(or in °dONLNd42@Ä)Inside Macintosh°dONLNd4Ä@∂)N  Volume V). x4x/, New York ({ ,     Helvetica+
  1787. 32+md)e)v)e)l)o)p)  )
  1788. March 1993ˇî◊#ˇ ˇˇˇˇ#◊ 
  1789. d, Palatino
  1790. .°dONLNd$Ë+6@.3.  Conditionally registering a component that°dONLNd/$$0†+ requires a hardware device°dONLNdI$†0£)|.°dONLNdK6B˚(^61If you write a component that requires a hardware°dONLNd}BNˆ* /device, you should set the wantsRegisterMessage°dONLNd≠NZ* 4flag to give your component an opportunity to verify°dONLNd‚Zf* 4that the specific hardware is properly installed. If°dONLNdfr* 3the hardware isn’t available, you can then indicate°dONLNdKr~˛* 0to the Component Manager that you don’t want the°dONLNd|~ä˜* 2component registered. The register routine, called°dONLNdØäñı* /with selector kComponentRegister, should return°dONLNdflñ¢* 5FALSE if it does want to be registered and TRUE if it°dONLNd¢Æ;* doesn’t.°dONLNd¥¿›*,One thing to be aware of is that even during°dONLNdK¿ÃÒ* /registration, the component will be opened with°dONLNd{Ãÿ¸* -OpenComponent and closed with CloseComponent.°dONLNd©ÿ‰Ù* .Therefore, you can expect OpenComponent before°dONLNdŸ‰„* ,the ComponentRegister routine is called, and°dONLNd¸* 1CloseComponent after ComponentRegister is called.°dONLNd8˚*1For example, if you have a 'vdig' that works with°dONLNdk‰* ,a NuBus video digitizer card, each time that°dONLNdò&* 1OpenComponent is called you can check whether the°dONLNd &2* 0hardware is correctly installed, and then return°dONLNd˚2>ı* /that status when ComponentRegister is called by°dONLNd+>Jâ* the Component Manager.°dONLNdBVb“*)2.  Detaching a movie controller properly°dONLNdkV“b’)∫.°dONLNdmht(ê65If you want to place the standard movie controller in°dONLNd£tć* -a different window or location from its usual°dONLNd—ÄåÁ* ,placement directly below the movie, you must°dONLNd˛åòÚ* 0detach the movie controller. Follow these steps:°dONLNd/û™œ*,1.  First bring up the controller by calling°dONLNd\™$∂+ -NewMovieController with the flag mcNotVisible°dONLNdã∂$¬* 5so that the controller is initially invisible. If you°dONLNd¡¬$Œ˝* /don’t do this, the application will momentarily°dONLNdÒŒ$⁄Ï* -display the controller in the wrong location.°dONLNd‡Ï˚(6.2.  Call MCSetControllerAttached with FALSE to°dONLNdNÏ$¯á+ detach the controller.°dONLNde˛
  1791. (&633.  Call MCSetControllerPort to move the controller°dONLNdô
  1792. $Ì+ 0to a different port if you want to place it in a°dONLNd $"¯* .different window. If you only want to move the°dONLNd˘"$.˝* /controller in the same window as the movie, you°dONLNd).$:⁄* 'don’t have to call MCSetControllerPort.°dONLNdQ$…(@6'4.  Call either MCPositionController or°dONLNdy$%0fi+ %MCSetControllerBoundsRect to move the°dONLNdü0%<fi* +controller to the new location in the port.°dONLNdÀBN(j605.  Call MCSetVisible to display the controller.°dONLNd¸T`Ì*-The movie will remain in whatever port it was°dONLNd*`l√* $assigned to using SetMovieGWorld. If°dONLNdOlxÁ* .MCSetControllerPort isn’t called (step 3), the°dONLNd~xѸ* 3controller will remain assigned to the movie’s port°dONLNd≤Ñê¡* "when NewMovieController is called.°dONLNd’ñ¢S* For example:,
  1793. Courier    °dONLNd‚Ø∫*0SetMovieGWorld(myMovie, (CGrafPtr) myWindow, 0);°dONLNd    ªΔ* 0mcMC = NewMovieController(myMovie, &movieBounds,°dONLNd    H«R“Ì+: mcTopLeftMovie + mcNotVisible);°dONLNd    h”fi—(˙6%MCSetControllerAttached(mcMC, FALSE);°dONLNd    éflÍÂ* )MCSetControllerPort(mcMC, myOtherWindow);°dONLNd    ∏Έ‡* (MCPositionController(myMC, &movieBounds,°dONLNd    Â˜R+: $&newControllerRect, mcTopLeftMovie);°dONLNd
  1794.  
  1795. ï(*6MCSetVisible(myMC, TRUE);
  1796. °dONLNd
  1797. $&ˆ*.1.  Calling MaxApplZone from every application°dONLNd
  1798. Rˆ&˘)fi.°dONLNd
  1799. T,8¸(T60Not calling MaxApplZone in an application is the°dONLNd
  1800. Ö8DÈ* )reason why many simple QuickTime playback°dONLNd
  1801. ØDP˛* 1applications play back movies poorly. Because the°dONLNd
  1802. ·P\* 1Memory Manager grows the heap only if there isn’t°dONLNd \h˛* 3any purgeable or free space left, QuickTime doesn’t°dONLNd Hht‚* ,have the space it needs to play back a movie°dONLNd utÄ* 3optimally. Since there’s no penalty or drawback for°dONLNd ©Äå* 1calling MaxApplZone, all applications should call°dONLNd €åò–* +the routine during initialization. In fact,°dONLNd ò§Â* *MaxApplZone should be your first Macintosh°dONLNd 2§∞¯* 0Toolbox call, because initializing QuickDraw and°dONLNd c∞º…* %other managers could allocate memory.°dONLNd âΔ“*2We hope these tips will help you avoid some of the°dONLNd º“fi˜* .most common pitfalls of QuickTime development.°dONLNd Îfi͉* )With so many developers writing QuickTime°dONLNd͈Û* .applications and adding QuickTime support into°dONLNdDˆ˙* 3existing applications, we want the journey to be as°dONLNdxÒ* .smooth as possible. We’ll keep you updated and°dONLNd߯* 3informed by continuing to bring you insightful tips°dONLNd€&* 1and details about QuickTime in this column. Watch°dONLNd&23* for it! x4x*, New York +Û- ,     Helvetica+
  1803. 33(è6.For more information on the Component Manager,)Ω see(ô6>the QuickTime or System 7.1 documentation on this subject, and*
  1804. ;see Gary Woodcock and Casey King’s article, “Techniques for*
  1805. &Writing and Debugging Components,” in )âdevelop)  Issue 12.•(è6Thanks): to the developers who have made this list possible and to(ô6>Bill Guschwan, Peter Hoddie, and Guillermo Ortiz for reviewing*
  1806. this column.•+O/SOMEWHERE IN QUICKTIME: TOP 10 QUICKTIME TIPS  )Ω
  1807. March 1993ˇ0D◊#ˇ ˇˇˇˇ#◊ 
  1808. d,     Helvetica.°dONLNd%W5ç+uPINSIDE°dONLNdC6Sç(nT    QUICKTIME°dONLNdakqç+5AND°dONLNd!èç(™?
  1809. COMPONENT-°dONLNd ùS≠ç+2BASED°dONLNd&ª/Àç(ÊMMANAGERS0x,
  1810. ¶
  1811. y-    •òÄ<êxHHiT%¸ˇˇˇˇˇˇÓÓÓÓÓÓ››››››ÃÃÃÃÃꪪªªª™™™™™™ôôôôôôààààààwwwwww    ffffff
  1812. UUUUUU DDDDDD 333333""""""êxy-    •4˛!"!¸"!!""¸!¸!¸!˝"""!"˚¸Í6""˛!"!˚"2!"˛!"!!!!˛˝ ˝˝"˛""""˛˛"˝˝˚˛ı˜2˝"2˚"2˛"!"˙!! !¸"˙"¸"˚˝˛¸Ì,˛"˛2"2˝"!¸"!!˚!˛˛˛ˆ.˛"#"##""#˝"    "˝˛˝˙˛˘12"23223233CC22˝"!˛"¯!˛˚    ˝0"˘#44D3""˛!"˛˝¸˙3"323˛2˛3DTC2¸"¸!""˛!˝¸'˝#¸"#443¸""˛¸¯˛˘1233˛23˛2332"2"2""!"!"!""˘!!¸˛˙"˛#˛"#˘"˛"¯ˆ
  1813. ˝¸4˛23˝2¸"2"2"!˝"!!˝"˛!!!˛¸ &˛"#ı"¸"¸˛˝ ˘,˚2!˛"2"2"2"2˛"˝!˚"23DDC22˝!˝˙/˛"##""#˙"""˛""#GâàáWheU3"˝˛˛˘3˚2 "22"2"2"2˝"!¸"4fòóô©ô©ô©©ßtC!!˚4    ##"#""˚" """""$W˛âôööôöôâöôòe2˛˝˚7223˛2 "˛2"22¸"!˝"
  1814. 3Wà©ôw™áö©ö˛©™©®d2˛˛¸0˚#""#˙"˛"""#GyxâñöYáyy˛öâ˛ö
  1815. ôS!˚:˛2323C2""22"2"2""!¸"3gáàhgiÜvyò¶©©ô©©™©©óc!˛˛/˛#3#$43##˜""#FwâàxUyyZIvâöäöâ䙲öôe"˛˘5˛3DCDTCC3˙2 "2"23gáwwóÜVY˛òßôöäôßy™˝©ñR!¸33#4˝ETD43¸#˝"$XàvÜTVUÖväwò©ò˛öô˝ö
  1816. ôöòT""˚< 33DfeUfeeTDC3˝2*""24góvWvwwâhxgzöà©ô™ô™ßô©©ô©ÖB!"2""!8334Wf˝VfUD3#"#˛""$FudWeyòIôòñwöhôôööôööââôôöÜC"#4D3!˚; TDUfeUefefeUS˝2"2DThgxxY™®©©ôgö©Ü♩©™™à˝©ßc3DUeT26UUVfUEE˛UVUD˝#"##Gôáyöâôàyâôò˛ô¸öôâöôôöôeDEVffC!¸<˛w(ÜeDUUTTUUS323223CV®áâôôòôáòòôÜâô©™©©¶òy©™˛©ÜT˛Ufd2˛<˛à vUDEUEUDED3#˛3#5Wò˛àxwwexxâwwyôôööóääöôôööóeUEEUU3˛5òààáeDUeU˘TDDUy®váudUUTeDEewààô©™©ßà˚© vTTUeeS16˛àwU˝E˛DE¸UEWyófUEC3"#3##4Fgwà˛ôöóy˛ô    ööáUEEVUC!˝;òòàáTDUTDTDDTg˝wvwâôfd1!!"2"33Ewà˝ô©áò©ô™©™®uUUfeT1;ààâvT4E˝D4EW˛wxxââófC""#$EXâôöáâòzâô˝ö ôáUVgfT"=áwàÜdDTD˛T&CDgáwwáàòôáu1"!"2DUwôô©óò©òò©™©™™©ó˛vfd2!=VfgvU˛D"EUEDEWwwxàâxòFe"4Eiâöôóàöòà˛ö™ööôàgwfe2<efvvdTT˛UTTUg˝áàò®àr˛ !!"34Vwôô©óö©®ò©©™©™©©òávvt2!7VVfgfU˛EU˛EWg˛wyyàáQ˝ !#4VWxàxôö˛ô˙ö    ôwffe2=;ffvwveeTUUTTUfvááwàyóh0!!"3DUfwÜx™©™©™©™©™©™©®ÜvfuB""2"9gwwxwgfUEEUEVVgwwgâxáx˝"#4EVfgäôzöôô˚ö
  1817. ôôfVVe2"#43:vwvfvwveT˝UffwwáàâÜá!"3DTUfxô¸©™©™©™©™®vffuB2DUT7fVfVUUEUE˝U    VgxgwàâwÑ˝    #4DEVy˙ö™™ö™ööôvfge3#5Vf;ffeUTTUU¸egòááwòòôDz!"3DDEfâ©©™™©™˛©™™˛©ávwuC3Uwv7ffUUDD4EVUVfVgxxwgàÜâDz
  1818. "#DDEWâ¸öò˙ö    ôàwwu33Vgg;wvfeTTDTUefvvf˝wàñyí"DCDUgô©©™˝©ô©©™™©©òááuC4fvw=wffVUTDDEFWgfVV˛fxáiDz#˛4EWy˛öô˛ö™˛ö ôöôàwwu44Vfg;áwvweTUTTUffvfefvegáâí˛ !33CCUf⽩™™©˛™˛©    ôááwÖSDfvw:wgwf˛UEUE¸VffUVwxDz#33#DUyôöô˝ö™ööôööò˛wvDEWgg:òóáveT˛Ue˛Uffvvdewáí!33CDEfâ˚©™©™˛©
  1819. âòwwáveUfww7ààâwfUEUVUEEVVfwwVUgâÅ34˝Vwâöô˙öô˛öàfgxwfV˛w7$áwôáveUUeUTTUewáweegâR322!""3Vwwefàö˙© ™©™©™©óvwááw˝á7wwââáfUEU˛EUVgxweUWyC5T""#5gàÖ$4Wä˝öô˘ö    òfgwwgwwxw;$wwàôòÜveUTDUffwàáeTVxB"TB21#CgàòÑffxô¸©ô™˛© ™©©óvwávvwááv5˛w"xààwfUEEUVfgxweD5h2D453Fâôâàgwâôö¸ô˙ö    âwgwfggxwf7#ávvfwàòáveefefáwveTDWtxÇUD hô®ßWR5ô˛™¸©˛™˝©áwávváwÜv:w˛VfgwfwfV˛fggwVUEFtVr3!iôôyHCFväööô˝ö˝™öôòfgwwg˛wf8v˝egvvfvfvffvwvueTUvD@2$àôòB"34x˙©™©©™™©©òvfávvwááw7f˝VgfeVggw˛f ggfUEEh2""2$˛â3$EVöô˝öôô˚öôóffwVVf˛w: ÜvvffwvdTUfww˝vfeUfx323B"5âôòB3Dhô©ô¸©ôô©™˛©    ®ugveefwáw9 vgfVfVgTD5Uf˛gfgVUEWx"##&âôàb#DEVhöö˚ô˛ö
  1820. ôòvhvUEfwwg=;feeUUffdTEUfeVfvveUewá!Hôôòr!"2DDgâô©©ô©©ô©™©©òÜwÜeUfááv9VU¸EU˛EVUDEWffEVgà#Yâôôc!#34Wâö¸ôâ˛ö
  1821. ôáwfvVVgxwg7fe˙UefvUSDVwveUfw 4h˛©r2!"3Uh©ô¸©ô©©™©òÜwáffwááw:(fUUEUUEEVggxU34FxwfUVh6iôâôc""#4Vzôöö˚ôöö™ô˛wgg˛wg<&udTTUTDDUfwáuCDVááveew!"Vôô©©s2"3DVôô˛©ôô©ô©™™©©ówáwvw˛á6%fUEDED334UUgeD4WwwfVVhGââôôî"##EWâ˘ô˝ö    ôôxàwggxww;$feUTTDCCDTUUTCEgàvvffx!h©©ò™¶233Uy˝©ô˝©™˛©™®˛áwwáàá;$wVUDD43344EED45gxffVgyzôöâöôC#4Vz˛öôôöô¸ö
  1822. ôöòxwwggààx4òáe˛UTT˛DUSCFwàávvwà!!5ô¸©É3Dfô˜©™©ö©ò˛ávvàáá=$âàfUEVVUEEUEDDFgáxgwxx"6à™öôööïD5hä˛öôöôöô˛ö ôöôwgwvgfxwx7ôôÜefeUeUffeeUfwà˛áàáR!!"7ô™©™©©dfg™©™¯© ™©ávfávffwáv9ââàwwVUEDFVVfVgvgx˛whr6˛öôöÖfh¸öôöô¸ö
  1823. àgfWwgVgxwf3˛àááfeTDV˛vfwffwáávwí!3Dy˛©áÜàı© ®Üefwávfwááf=gwgwxvVDDFgfxxwfVhxwfgDz "#5EVVUgäôö˛ôö˛ôöôöôvfggwgffwwf8gvvwwÜwdTfáwàwáeexòávwî˛!
  1824. !#DTTUT®ô™˘©ô©™ôávvwáwvvwáÜ8gf˛g˛wfyâààxwvfxàxàxà""4DVUUWà˚öôö˝ô öàfUFWfgffgwf8gÜf˚wà˛òààááàáàááô2533DTwôòTgà™˛©™˝©    ôôòáuUTUUf˝vwf8x˚wggâôââàxwxxwxwwâ"&c5FfxâöìHà¸öôôööôôwU˛D4EUV˛gfV:ò˛àòàáwáòô¸òàà˝áà23!"22EVwsEà©™˛©™™˛©óvTTUTD˛Uvvffe4˚âôàà˝âô˛âà˛xwxR"#$ExvD5z˚ö˛ôöñU˛E    UVVUEVfVfU9òòàò˛ôòôòò˛ôòàòôòòááàí""4fUUevTei™©™˙©óugefvvweUfvfve5âàxààââà˙âààâ˝à xÉ"#3#DEUWgä˚öôôöôàwwgfgwwvVWfgvf7ôòòàòàò˛à˚ò˝àòààò2"#C33DUxâô©™©˛™©™©©òáávv˛wvfwáwàá.    ààxxàxàxxw˜xààxâ#˛"#34Gwâä˘öôôàx˝wg˛wg˝w)àò¸áà˚áw˘á àR!""34Vfò©™˛©™˝©òáw˙á˚w/ààw¸xˆwxwxààí""##4FVöö™˝öôôöôâwgww˛x˝wgwgg9òòááà¸áàáàááwáwwááàáâ¢˛!33Dfx˛©™©™¸©ô˛v wwááàáàwáwvv5â˝àxà¸xàx˚wxàwyÇ"#3EWâö™˛öôôö˝ôfVf˝gxxàxxwgf4
  1825. àòàòàòáàááw¸áwáwwàáwáu2!23DUwô™˘©
  1826. ô©òvfvffvww¸áwv/ââààxà˛xww˝xàxxáxxwgvf"#4EWâöö˜ôà¸f¸g˛xww3ôôò˚à˛áààòààòòܲwáv3DTfw˝©ô˘©®Üwvvfvfvvwwàáàá7
  1827. ôôâààxàxàxà¸xàxòwgvgxg 4Efhà˛ôöôô˝öôöôôáwgwfgfgfg¸w8©ôòòàáá¸àáààóààòܲv wf`gááwàâ©ôô˛©™©™˛©óáá˝w˛vwv˛w2˝ô˛à˚xähàxââággfgV`%fgxxââôöô¸öôôáxàxx˛w˛g˛fg8¸©òò˝ávwâàò˝à#ávfvátUfxòâô©©™©™©©ô™ówwàòààáwáw˛vf:ôôöôöââààgwfhóäôwxàwwgwfwf˝$EVgxâäô¸öôöôòfgwxxàxxwwgwf8©©˝ô©òàòòô®òô©áààáwàávñv03Vwwòôô˙©ô©óvvwwàòàòááww5¸ôâà䲙˛ô âôágwxwwggww`˝$Exâôöö˝ô    öôâöôvggwx¸àxw3©ôòwá®ö˝™©™©ä©©wv˝w vâwp#3Dg˘©ôò™™ò˛w˝à˛òá8    ôòszâö™ö™ö˛™özôöów¸gxxu˛˛4Väôôöôöôôâ™öôòwxx˚àx0ôòwòô¯™àô©©wwvv˛wáw˛ !"4CDDy©©ô©©˛ô˛™®¯àá:âàöä˛ö™ö™˛ö™ââôöáffggfwàw #B45hââ˛ô˛â˛öôòx˝àxxàw:˛ò©¸™.©™©™™ôâô©®vvfvvxòóp!"3EsUwá♩òòôô™©™©®áààáá˛àá8äà™ö™öô˚öhöâôôöógfVfgòàp6xt5Uh˛ô˝âôöö™òwgxwUVxxw=™ä™™©©ô™©©ô©™ñ©àò˛©vffvwòòÇ"4àááS5TbTâ˛òô©ö™™òÜwwveUwáá=ö™™ôööôöôöôô™ßòâàâööó˛fVyôáw˛xv6Ww&ô˛âôôä™™ôv˛fUEVfg<™™©©óô©©™˛©™¶ôxàxôô™ñvffyôò1"xááwwÑwáwrô˛ò˛ô™™©Üfef˛Uee:™˝ôjòàöôöô™ó˛xwâôöôwVViââqààxwg7wxwgI˛âàââö™™óU¸VUU<˛©ô©x©ôy™©©™•àxwáⲩßefy©©í"òòááówÜw˛v9ò˛ôòô˛™©ñTU˛eUU:ââôôöñöôfôô©ö™ixxwyäôöövVhàöó(˛àáwfwwgfgv˛à˛â˝öóeDEUVUU:
  1828. âòô™™¶â©ßYô˛™∏háwàòôô™®vgô©©ààòòóáfewvvwÇàò˝ô˛™©©ÖSDD˛e=    àôâööójööf˛ö™ôhxgyââôööÜWyö©xâ˛àwfb$Ffgwyàââôôöô˛öáT˛4VV=
  1829. óôâô©™y©©Üy˛™©wvxòôô©ô©©gà©ôóà˛ò
  1830. wvf#FefwHòà˛ô©™˛©™ÖS3DDU<àzh˛ö$x™™ßWöö™öàgwwààâôööóáôââxâààwfUSgwfXH˝â ôö™ôöö™övD44E; òâw™©™ß™™©Üô˛™∑wàáàòòô©™©òô©ô˛à òóeeRvwveÑòò˛ô©˝™˛©ÜDDT=ââvö™ößö™™gYö™™UVgwyà˛âôöôyöôààxààeUBgfgTgââôô˛ö    ™ö™ööôôvED:àâ•ö©™ß˛™    ßw©™©DW¶ww˛àôô™©ôô©óà˛áudBvegtw˝ô©©˝™˛©ô©uT<xx¶˛ö$óö™™ôuä™öCYßhäö™ö©âôö™ôôàxáhwvD3VVWtH˝â ôö™™öö™ö™öôóT9àô•ö™™©ö˛™uy™©Cjv丙©©˛™©ôwòvxÜDCuegÑfòôô©ô¸™©™™©™©u7xá©z™ö™j™ö™fYö™Yój˙™ôö™™ôôàxvgwD5fVhvv¸âö™™ö™˛ö™™öò6Üà™z˛™ä˛™ßW˛™z¯™©˛™®óàáewS6efxvàòòôòòô©˝™©˛™©©<uhöj™™öö™™ößFööß™™ö˛™˛ö™ö™ööôóxàeWTVVgàgxà˛â ôö™ö™ö™ö™ö™öö.Ügöi˛™©˛™¶eäı™∫™™©©®xàÖUrfwáôááò˝ô©˘™©™©.g7zJ˛™ö˛™®ej¯™ö¸™ööôxâáETw˛â˛àâ˛ôöö˙™˛ö,x7yi˙™∫uXÚ™©©ôáòòeVàôôòàòòô©©ôô˝™©©™™©™™;óHZóô™ö™˝ö fHö™ö™ö™ö™ö™˛ö™ö™ööáâàvYââôô˝âôâôô™ö™˛ö™ö™öö,xhI¶˘™vVı™∫˝™    ©®yôóyòôô©˛ôòôô©¸™©©™™©™©-àñFñö˚™öÜUäı™ö˝™ òyôôââôôââôô˝âö¸™öö™™öö+UáU®˘™ßdäÙ™©öòôôò˛ô©ôôò˛ôò˛ô©¸™©˝™©<xieäz™ö˛™ööóej˛™öö™™˛ö    ™ö™™yáxyôâ˝ôâôôà˛âàâö™˛ö™ö™ö™öö2xôóäy˙™ßui˝™©˝™ ©™∫™™òßáwâô©˚ôóvwiôô¸™©™™©©™™5wwázj™™ö¸™fHö˚™ö™™˛ö™áñwgxâ˝ô    ââôôyôâöâô¸™ö˛™ö™,àôáàz˘™ÜV˜™    ©©™©á¶wugà˛©ô™©ô©®©˝ô¸™©™™˛©;wàxäzöö™ö™ö™öóVöö™ö™ô˛™ö™ö™™WâWeWxâôöö¸ôâöôôâöô™ö™ô™ö™öö.®ôóôw˘™ßuô¯™ ©™©™UágÜEwâ©ô˚©ôô©ô©˝™©˛™©™©2ôäàâg˛ö˝™ öòezö™™öö™ö™¸öfxgvDWxâ˝öôööôâôô˛ö˛™˚ö<©â®©Ü˛™©™©™©™uy˝™©™©™©™©™©ÜxwuSVwàô˛©™˛©ôô©ô™©™©™â©©™©©1öòôãÜ™ö˛™öö™öÜi˛ö™ö™ö™¸öóhgfC&fhâ˙ö˛ô˝ö™ôâ¸ö;™®™©óö™©™™∫©™©¶g¸™©˛™©˛™ ßxÜeTFvgàô©©˛™©©ôô™©˛™®ô©™©™™+˝öòz˙™ößVö˘™öö™öïXeUEFVWyâ˚öôâä¸öôöô˝ö9ô™ô©®z¸™©™©®fô˝™©©™™˝©•VÖeTEvwàòô©ôô™˛©ô™™©™™©©˛™©™<xöô™ôzö™ö™ö™ö™öeyö˛™öö™ö©öôôóFÖeFWfgàxààô˛ö˛ôö˛™ö™˛ö™öö
  1831. d
  1832. °dONLNd/Ù'(,BILL°dONLNd3Ù'*) °dONLNd4Ù)k)GUSCHWAN, Palatino °dONLNd=åñö(µ¥AIntercepting the processing of a QuickTime routine enables you to°dONLNdûñ¨Ÿ*:debug the routine, use the routine in new ways, and better°dONLNd∫∞ñæ*@understand QuickTime architecture. To intercept the routine, you°dONLNd˚¬ñ–    *?need to know something about its low-level implementation. This°dONLNd;‘ñ‚È*;article discusses the low-level implementation of QuickTime°dONLNdwÊñÙ *Broutines, and also describes tools and programming techniques that°dONLNd∫¯ñÙ*=can be used to debug, modify, and analyze QuickTime routines.°dONLNd¯
  1833. ñ‚*8Some of these techniques take advantage of the Component°dONLNd1ñ*˙*=Manager, and their usefulness will extend beyond QuickTime as°dONLNdo.ñ<Ü*)future managers capitalize on components.
  1834. °dONLNdöZñf*+OAs QuickTime routines pass through some common locations, they’re accessible to°dONLNdÍfñr¯* Oyour application or to a debugger. A QuickTime routine begins with its function°dONLNd:rñ~Ù* Pname, as used in your application and defined in the interface files. It usually°dONLNdã~ñä* Ncompiles as an A-trap and maybe some assembly glue. The routine may call other°dONLNd⁄äññ * TMacintosh routines, be affected by global data structures, pass through a grafPort’s°dONLNd/ññ¢ * Sbottleneck, or pass through a component’s main function. Because you have access to°dONLNdÉ¢ñÆˇ* Rthese locations, you can intercept the processing of the routine, perform your own°dONLNd÷Æñ∫* Sspecial processing, and then allow the normal execution of the routine to continue.°dONLNd+Δñ“*LThis article’s examples use MacsBug and TMON Pro (TMON Professional v. 3.0.1°dONLNdx“ñfi* Sfrom Icom Simulations, Inc.) to intercept and analyze routines. The tools discussed°dONLNdÃfiñÍ
  1835. * Ucreate resources for both debuggers, though in some situations you’ll want to use one°dONLNd"Íñˆ* Ndebugger over the other. For example, the language extensibility of TMON Pro’s°dONLNdqˆñ* Pbuilt-in assembler provides capabilities that other debuggers don’t provide. Now°dONLNd¬ñ    * Slet’s get into the practical aspects of analyzing and debugging QuickTime routines. °dONLNdñ-·*    QUICKTIME°dONLNd·-Â)K °dONLNd ‰-)A-TRAPS
  1836. °dONLNd(1ñ= (Y¥NAn A-trap is a two-byte opcode that always begins with the hexadecimal numeral°dONLNdw=ñI* UA. The remaining 12 bits in the opcode identify the particular routine you’re calling xBx/,Times ({& +
  1837. 34+ã
  1838. BILL (“ANGUS”) GUSCHWAN)r
  1839.  describes(ô¥0Angus as an identity cocktail in the sky. If his*
  1840. 1favorite philosophers, character, and author were*
  1841. /alive today, we can imagine what they might say*
  1842. 0about the young man and the sky. Gottlieb Frege:*
  1843. 1“A setting sun indicates the object, sun. But the*
  1844. .sun also rises. Just as a night in the forest,*
  1845. /mountains in springtime, and a walk in the rain*
  1846. -convey solitude, each sense adds knowledge to(èv,the meaning of the sun. Thus, Angus does not*
  1847. +singularly denote Bill Guschwan, but rather*
  1848. /indicates a sense of him.” Ludwig Wittgenstein:*
  1849. +“Bullfighting is an analogy for life. Angus*
  1850. 4represents the bull, whereas language represents the*
  1851. )toreador’s red cape. Thus, Angus perishes*
  1852. 1 if he trusts it, and destroys if he ignores it.”*
  1853. .Andromache: “As a young Indian identifies with*
  1854. .soaring hawks, young Angus identifies with the(ÚDd)e)v)e)l)o)p)  )
  1855. March 1993ˇfi◊#ˇ ˇˇˇˇ#◊ 
  1856. d, Palatino
  1857. .°dONLNd$à+6@Qcalling along with other information about the call. A-traps interrupt the normal°dONLNdR$0é* Rprocessing of the CPU and cause it to jump through a low-memory vector to the trap°dONLNd•0<e* Idispatcher. The trap dispatcher examines the bit pattern of the opcode to°dONLNdÔ<Hà* Pdetermine the actual location of the Macintosh routine in memory, and then jumps°dONLNd@HTÑ* Pto it. Almost all Macintosh Toolbox routines use the A-trap mechanism to jump to°dONLNdëT`I* their code.°dONLNdûlxå*RIn the early days of the Macintosh, there was one routine name per A-trap, but the°dONLNdÒxÑh* Hnumber of routines increased so dramatically that a second mechanism was°dONLNd:ÑêÉ* Nintroduced to avoid exhausting all the A-traps. This mechanism uses the normal°dONLNdäêúâ* RA-trap mechanism to identify a grouping of routines (usually defined by a specific°dONLNd›ú®w* Qmanager) and uses selectors located on the stack or in a register to identify the°dONLNd/®¥\* Hspecific routines within the grouping. QuickTime uses only four A-traps:°dONLNdx∫+Δ1+•°dONLNdz∫7Δ®) 0xAAAA: Movie Toolbox°dONLNdêÃ+ÿ1(ÙI•°dONLNdíÃ7ÿº) 0xA82A: Component Manager°dONLNd≠fi+Í1(I•°dONLNdØfi7͉) !0xAAA3: Image Compression Manager°dONLNd—+¸1(I•°dONLNd”7¸ß) 0xABC2: Matrix routines°dONLNdÎÄ(06SUsing four A-traps for over 500 routines is possible because the interface glue can°dONLNd? ë* Wpush routine selectors into registers or onto the stack. QuickTime picks the routine it°dONLNdó ,p* Lneeds to execute from the value of the selector. For example, with the Movie°dONLNd‰,8|* NToolbox, QuickTime uses a word in the D0 register. So 0x303C and xxxx (the two°dONLNd2,|8Ä(Tö-°dONLNd38Dí(`6Tbyte selector) appear before the A-trap in the Movies.h file. This disassembles into°dONLNdàDPÇ* MMOVE.W #$xxxx, D0. If you want to find out what other opcodes mean, try using°dONLNd÷P\[* Athe TMON Pro assembler as described in “TMON Pro Assembler Demo.”°dONLNdht~*OOn a separate note, components implement routines through selectors as well. In°dONLNditÄt* Msome ways, a component is not unlike an A-trap. The ramifications of this are°dONLNd∑Äå›* -discussed later in the section “Bottlenecks.”,     Helvetica °dONLNdÂù´\*TRAPPING°dONLNdÌù\´`)D °dONLNdÓù_´¶)COMPILED°dONLNdˆù¶´™)G °dONLNd˜ù©´) APPLICATIONS
  1858. °dONLNdتÖ(◊6NA QuickTime routine’s A-trap provides a common location that your debugger can°dONLNdSª«h* Ginteract with. Traditionally, Macintosh developers have used MacsBug to°dONLNdõ«”ã* Qinvestigate the flow of A-traps in compiled applications. Knowing the sequence of°dONLNdÌ”fl]* FA-traps needed to implement specific functionality provides invaluable°dONLNd4flÎ7* ?information exceeding the scope of even the best documentation.°dONLNdu˜í*NLet’s see what happens when we take the simple QuickTime debugging approach of°dONLNdƒ|* Mbreaking on the four A-traps. For example, start with the 0xAAAA trap. If you°dONLNd    å* perform an “atb _AAAA”    °dONLNd    (åé)t 
  1859. °dONLNd    )éÑ)4and run MoviePlayer, MacsBug is continually invoked.°dONLNd    ^'Å(C6SYou can use the debugger to see the selector value that identifies the routine, but°dONLNd    ≤'3u* Punless you have the interface files in front of you or you memorize the selector°dONLNd
  1860. 3?Ü* Rvalues, you won’t be able to tell which QuickTime routine is being called. You can°dONLNd
  1861. V?KA* probably x4x&,Times ({) +
  1862. 35(è6-lost generation of somnambulating dogcows. As*
  1863. -an Indian peasant links with god via the farm*
  1864. .tools in the hands of a Buddhist statue, Angus*
  1865. -links with god via the TMON Pro manual in the*
  1866. $hands of a Zimmerman statue.” Ernest*
  1867. 'Hemingway: “OK. Sure, Angus. Anyone for*
  1868. #a martini cocktail? With a twist.”•(Ú</INSIDE QUICKTIME AND COMPONENT-BASED MANAGERS  )À
  1869. March 1993ˇæ™◊#ˇ ˇˇˇˇ#◊ 
  1870. d,     Helvetica .°dONLNd"60]+TKTMON°dONLNd"]0a)' °dONLNd"`0|)PRO°dONLNd"|0Ä) °dONLNd    "0”)    ASSEMBLER°dONLNd"”0◊)T °dONLNd"÷0˛)DEMO"6F# 6G6+"6,#"7F"7,    °dONLNd@6K(gT0TMON Pro has an assembler/disassembler built in.°dONLNdJK6V    * 0You can enter TMON Pro, type hexadecimal machine°dONLNd{V6a    * 3code, and watch as it’s disassembled into assembly.°dONLNdØa6l* 4To do this, you need to make use of TMON Pro’s typed°dONLNd‰l6w * 4windows, which provide alternative views of the same°dONLNdw6Ç* 1location in memory. So, if you anchor an Assembly°dONLNdKÇ6ç* 3window and a Memory window at some safe location in°dONLNdç6ò* /memory, you can type machine code in the Memory°dONLNdØò6£¯* /window and watch the numbers translate into the°dONLNdfl£6Ɖ* )assembly routines in the Assembly window.°dONLNd    ∫6≈ˇ*0TMON Pro sets aside an area of memory for you to°dONLNd:≈6–* 7play with, identified by the variable PlayMem. Here’s a°dONLNds@KÚ(g99useful alias that you can install in your TMON script (it°dONLNd≠KVÚ* 3assumes you use the script provided with TMON Pro):,
  1871. Courier°dONLNd‚bmf*alias PlayTime,°dONLNdÛmx˚* -"TopWind .10 ∂n New Memory HereHP,:Δplaymem ∂°dONLNd!xÉ* /BottomWind .6 ∂n New Assembly HereHP,Δplaymem ∂°dONLNdQÉéÑ* Open Registers #1=#0"°dONLNdgö•Ú*3Now you can type “PlayTime” at the command line and°dONLNdõ•∞˜* 5have a safe area in memory for exploring the TMON Pro°dONLNd—∞ª* 8assembler. The Playtime alias anchors the two windows to°dONLNd
  1872. ªΔ* 7the same place in memory and swaps out the registers so°dONLNdBΔ—Ù* 7that you don’t harm them while you play (see Figure 1). RF˘F R,˘,
  1873. 4ˇST°d
  1874. ONLNf‰
  1875. T%<ò8@Ω@ΩT@……Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡ò8@ÄΩ@ÄΩ@TÄÀˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡Àˇ‡˙—˙—˙—˙—˙—˙—˙—˙—˙—?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿ò8ÄÆΩÄÆΩÄTÆ?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿?Àˇ¿òÅæ@ΩHHgÄ%˝Ä˛ˇˇˇˇˇˇˇˇˇˇÃÃˇˇˇˇôôˇˇˇˇffˇˇˇˇ33ˇˇˇˇˇˇÃÃˇˇˇˇÃÃÃÃˇˇÃÃôô    ˇˇÃÃff
  1876. ˇˇÃÃ33 ˇˇÃà ˇˇôôˇˇˇˇôôÃÃˇˇôôôôˇˇôôffˇˇôô33ˇˇôôˇˇffˇˇˇˇffÃÃˇˇffôôˇˇffffˇˇff33ˇˇffˇˇ33ˇˇˇˇ33ÃÃˇˇ33ôôˇˇ33ffˇˇ3333ˇˇ33ˇˇˇˇˇˇÃàˇˇôô!ˇˇff"ˇˇ33#ˇˇ$ÃÃˇˇˇˇ%ÃÃˇˇÃÃ&ÃÃˇˇôô'ÃÃˇˇff(ÃÃˇˇ33)ÃÃˇˇ*ÃÃÃÃˇˇ+ÃÃÃÃÃÃ,ÃÃÃÃôô-ÃÃÃÃff.ÃÃÃÃ33/ÃÃÃÃ0ÃÃôôˇˇ1ÃÃôôÃÃ2ÃÃôôôô3ÃÃôôff4ÃÃôô335ÃÃôô6ÃÃffˇˇ7ÃÃffÃÃ8ÃÃffôô9ÃÃffff:ÃÃff33;ÃÃff<ÃÃ33ˇˇ=ÃÃ33ÃÃ>ÃÃ33ôô?ÃÃ33ff@ÃÃ3333AÃÃ33BÃÃˇˇCÃÃÃÃDÃÃôôEÃÃffFÃÃ33GÃÃHôôˇˇˇˇIôôˇˇÃÃJôôˇˇôôKôôˇˇffLôôˇˇ33MôôˇˇNôôÃÃˇˇOôôÃÃÃÃPôôÃÃôôQôôÃÃffRôôÃÃ33SôôÃÃTôôôôˇˇUôôôôÃÃVôôôôôôWôôôôffXôôôô33YôôôôZôôffˇˇ[ôôffÃÃ\ôôffôô]ôôffff^ôôff33_ôôff`ôô33ˇˇaôô33ÃÃbôô33ôôcôô33ffdôô3333eôô33fôôˇˇgôôÃÃhôôôôiôôffjôô33kôôlffˇˇˇˇmffˇˇÃÃnffˇˇôôoffˇˇffpffˇˇ33qffˇˇrffÃÃˇˇsffÃÃÃÃtffÃÃôôuffÃÃffvffÃÃ33wffÃÃxffôôˇˇyffôôÃÃzffôôôô{ffôôff|ffôô33}ffôô~ffffˇˇffffÃÃÄffffôôÅffffffÇffff33ÉffffÑff33ˇˇÖff33ÃÃÜff33ôôáff33ffàff3333âff33äffˇˇãffÃÃåffôôçfffféff33èffê33ˇˇˇˇë33ˇˇÃÃí33ˇˇôôì33ˇˇffî33ˇˇ33ï33ˇˇñ33ÃÃˇˇó33ÃÃÃÃò33ÃÃôôô33ÃÃffö33ÃÃ33õ33ÃÃú33ôôˇˇù33ôôÃÃû33ôôôôü33ôôff†33ôô33°33ôô¢33ffˇˇ£33ffÃç33ffôô•33ffff¶33ff33ß33ff®3333ˇˇ©3333ÃÙ3333ôô´3333ff¨333333≠3333Æ33ˇˇØ33ÃÃ∞33ôô±33ff≤3333≥33¥ˇˇˇˇµˇˇÃÃ∂ˇˇôô∑ˇˇff∏ˇˇ33πˇˇ∫ÃÃˇˇªÃÃÃúÃÃôôΩÃÃffæÃÃ33øÃÿôôˇˇ¡ôôÃìôôôô√ôôffƒôô33≈ôôΔffˇˇ«ffÃûffôô…ffff ff33ÀffÃ33ˇˇÕ33ÃÃŒ33ôôœ33ff–3333—33“ˇˇ”ÃÑôô’ff÷33◊ÿˇˇˇŸ˘`˘`˘`⁄Ú–Ú–Ú–€Ï@Ï@Ï@‹Â∞Â∞Â∞›fl fl fl fiÿêÿêÿêfl“““‡ÀpÀpÀp·ƒ‡ƒ‡ƒ‡‚æPæPæP„∑¿∑¿∑¿‰±0±0±0™†™†™†Ê§§§ÁùÄùÄùÄËñññÈê`ê`ê`Íâ–â–â–ÎÉ@É@É@Ï|∞|∞|∞Ìv v v ÓoêoêoêÔiiibpbpbpÒ[‡[‡[‡ÚUPUPUPÛN¿N¿N¿ÙH0H0H0ıA†A†A†ˆ;;;˜4Ä4Ä4į---˘'`'`'`˙ – – –˚@@@¸∞∞∞˝   ˛êêê@ΩT@'ÅÅÅ√ÅÅÅ√ ˛ÅˇÅˇÅˇ…ˇ˛˛ˇÅÅÅÀˇ˛˛ˇÅÅÅÀˇ˛˛ˇÅÅÅÀˇ˛˛ˇÅÅÅÀˇ˛˛ˇÅÅÅÀˇ˛˛ˇÅÅÅÀˇ˛˛ˇÅÅÅÀˇ˛˛ˇåˇÅÅ¡ˇ˛]˛ˇÛˇ˛˛˛ˇ˙˛ˇ˝˛‡ˇ¸˛ˇÛ˛ˇÍ˛ˇˇˇ˛ˇ˛˛˛ˇ˛˛ˇ˛ˇ˘˛˛ˇˇˇ–ˇˇ˛ˇˇÅ¢ˇ˛T˛ˇÛˇ¸ˇ˘ˇˇ‹ˇ˚ˇ⁄ˇˇˇˇˇˇˇˇˇˇ˘ˇ˛ˇˇˇˇ—ˇ¸ˇÅ¢ˇ˛í˛ˇÛˇ¸ˇ˘ˇˇˇˇ˝ˇˇ˛ˇ˛˛ˇ˛ˇ
  1877. ˇˇˇˇˇ˛ˇ˝ˇˇˇˇˇ˚˛ˇˇˇ˛ˇˇˇˇˇ˘ˇˇˇˇˇˇˇ˛ˇ˛ˇˇ˛ˇˇ¸ˇˇˇ—ˇ¸ˇÅ¢ˇ˛ê˛ˇÛˇ¸ˇ˘˛ˇ˛ˇ˛ˇ¸˛˛˛ˇ˛ˇˇ˛ˇ˛ˇˇˇˇ˛ˇ˛ˇ˛ˇˇÙˇ˛    ˇˇ˛ˇ˛˘ˇˇˇ˛ˇˇ˛˛˛˛˛ˇˇˇ˝˛ˇˇ—ˇ¸ˇÅ¢ˇ˛ê˛ˇÛˇ¸ˇ˘ˇˇ˛ˇ˝ˇˇˇ˚ˇˇ˛ˇˇˇˇ˛ˇˇˇˇˇ˛ˇ˛ˇˇÙˇ˛    ˇˇˇˇˇ˚ˇˇˇˇˇˇˇˇˇ˝ˇˇˇˇ˛ˇ˛ˇˇ—ˇ¸ˇÅ¢ˇ˛à˛ˇÛˇ¸ˇ˙˛ˇ˛˛ˇˇˇ˝ˇˇ˛ˇ˛ˇ˛˛ˇˇˇ˝ˇ˛˛ˇ˛ˇ˘˛ˇ˛ˇ˛ˇˇˇˇˇ˚˛ˇˇˇ˛ˇˇ˛ˇˇ˛ˇ¸ˇ˝ˇ˝ˇ˝ˇˇ–ˇ¸ˇÅ¢ˇ˛$˛ˇÛˇ¸ˇ≈ˇfiˇßˇ¸ˇÅ¢ˇ˛$˛ˇÛˇˇ˛ˇˇΔˇÇˇˇ˛ˇˇÅ¢ˇ˛˛ˇÅÅÅÀˇ˛C˛ˇ˝0$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$+$$ÅÅŎ˛h˛ˇ˝$++$ˇˇ+$+ˇˇ$+ˇˇ+˝ˇ +$+ˇ+$+ˇ$+˛ˇ +$ˇ+$++$+˙ˇ˛ˇ˛ˇˇıˇ˛ˇÙˇ—˝ˇÎˇˇÙˇÅ顲g˛ˇ˚-+%ˇ+ˇˇ+%ˇˇ%ˇ+ˇˇ%ˇ+%ˇ%+ˇˇ+%ˇˇ%+%˘ˇ˝ˇˇ˛ˇıˇˇˇˇÙˇ–ˇ¯ˇÛˇˇˇÅŎ˛™˛ˇ˝+$$ˇ$$˛+ˇ$ˇ$ˇ+ˇ$+ˇ$˛ˇ+ˇˇ˛+$$ˇ$$ˇ$ˇ+$$˛+$˚ˇ˝ˇ˛˛˛ˇ˛ˇ˛ˇˇ˛ˇˇˇˇ˛˛˛ˇˇ˛ˇfiˇÛˇˇ˛ˇ#ˇˇ˛ˇ˛ˇ˛ˇˇˇˇˇ˛ˇ˛ˇˇˇˇ˛ˇ˛˛˛ˇˇÅôˇ˛ô˛ˇ¸/+$+ˇ+$ˇˇ$+ˇ+ˇ+ˇ$+ˇ$+ˇ+$ˇˇ$+ˇ+$+ˇ+$+ˇ+ˇ++$+˚…˚ˇˇ˝ˇ˛    ˇˇˇˇˇ˛
  1878. ˇˇˇˇˇÃˇ˛ˇˇˇ˛ˇˇˇˇ˝ˇˇˇ¸ˇˇ˛    ˇˇˇˇˇˇÅóˇ˛ò˛ˇ˝1+%ˇ%ˇ+ˇˇ%ˇ+ˇˇ%ˇ%ˇ+ˇˇ%+%ˇ%ˇ+%+%˝…˚ˇ¸ˇˇˇˇˇˇ˛ˇˇ˝ˇˇÃˇ˛ˇˇˇ˛ˇˇ˝ˇ˝ˇˇˇ˚ˇ˝ˇˇˇ¸ˇˇÅôˇ˛§˛ˇ˝0$+$$˛ˇ$$ˇˇ$+ˇˇ+$ˇ+$$˛ˇ$$ˇˇ$+$$+$$˛+$$+ˇ$¸…¸ˇ˛ˇ˛˛ˇˇˇ˛˛˛ˇ˛ˇ˛ˇˇˇ€˛Ùˇˇ˛ˇˇˇ˛
  1879. ˇˇˇˇ˛ˇˇ˛˛˛ˇˇˇ˝˛˛˛ˇˇ˛ˇ˛ˇÅòˇ˛K˛ˇ˝1$++$++$++$++$++$++$++$++$++$++$++$++$+˝…ΡÅÅùˇ˛K˛ˇ˚-+%+%+%+%+%+%+%+%+%+%+%+%˚…Ïˇ¿¸ˇÅÅ‚ˇ˛˛ˇ«…ÅÅܡ˛˛ˇ«…ÃˇÅÀˇÅÛˇ˛õ˛ˇ¯ˇˇ˛ˇˇ˛ˇˇ˝ˇ˛ˇ˝ˇ˛˛ˇÒ…ˇ˛ˇ˛ˇˇıˇ˛ˇÙˇ˘˛ˇˇˇ˛ˇˇ˛ˇˇ˝ˇÙ ˇˇˇˇˇˇ˚ˇ˚ˇˇˇèˇˇ˛ˇ˛ˇ˝ˇˇ˛ˇˇ˛ˇˇ˙˛ˇ˛ˇˇóˇ˛Æ˛ˇ˘ˇˇ˛ˇˇ˛ˇˇ˛˝ˇ˝ˇ˛˛˛ı…ˇ˝˛ˇ˛ˇıˇ˛ˇˇÙˇ˝ˇ˛ˇ˛ˇˇˇˇ˛ˇˇÛ˛ˇ˛ˇˇˇ˛ˇˇ˘ˇ˛ˇê˛˛ˇ ˇˇˇ˛ˇ˝˛ˇˇ˛˙˛ˇ˛ˇòˇ˛Δ˛ˇ˘ˇˇˇˇˇˇ˛ˇ˛ˇ˛ˇ˝ˇ˛ˇˇ¸ˇ˚…ˇ˝ˇˇ˛ˇ˛ˇˇˇ˛ˇˇˇˇˇ˛˛ˇ˛ˇ¸ˇ˝ˇˇˇˇˇˇˇ˛ˇ˝ˇ˘ˇˇˇˇˇˇˇˇ˙ˇˇˇêˇˇ˛ˇ˛ˇˇˇ˝ˇˇ˝ˇ˙ˇˇˇˇòˇ˛∏˛ˇ˘ˇˇˇˇˇˇ˛ ˇˇˇˇˇ˛ˇ˛ˇˇˆ…˚ˇˇ˝ˇ˛    ˇˇˇˇˇ˛
  1880. ˇˇˇˇˇ˚¸ˇ˛ˇˇˇˇˇˇˇˇˇıˇˇˇˇˇˇˇ¯ˇˇê˝ˇ˝ˇˇˇˇ˝ˇˇ˛ˇ˘ˇˇˇˇòˇ˛∑˛ˇ˘ˇ˛ˇˇˇˇˇ˛ˇ˛ˇˇ˙ˇˇˆ…˚ˇ¸˛ˇˇˇˇˇ˛ˇˇ˝˛ˇ˘˛˛˛ˇ˛ˇˇ˛ˇˇˇˇıˇˇ˛ˇ˛ˇ˛ˇ¯ˇˇêˇˇ˛
  1881. ˇˇ˛ˇˇ˝ˇˇ˛¯ˇ˛ˇˇòˇ˛µ˛ˇ¯ˇˇ˛ˇˇ˛ˇˇ˛ˇ˝ˇˇ˛ˇˇ¯ˇ¸ˇ˚…¸˛ˇ˛˛ˇ˛ˇ˛ˇˇ˛ˇ˛ˇˇˇ˘ˇ˛˛ˇˇˇ˛ˇˇ˛ˇˇ˛ˇˇ˝ˇ˘ˇˇˇˇ˝ˇ˝ˇ˛ˇ˛ˇˇä˛ˇ˛ˇ˝ˇˇ˛ˇˇ˝ˇ˛ˇ˛ˇ˛ˇˇóˇ˛ ˛ˇ«…Ρ„ˇÅÀˇËˇçˇ˛˛ˇ«…ÏˇÅíˇåˇ˛˛ˇ«…ÅÅܡ˛˛ˇ«…ÃˇÅźˇ˛}˛ˇ¯ˇˇ˛ˇ˛˛˛ˇ˛˛ˇ˛ˇ˝˛˛˛ˇˇ˛ˇı…ˇ˛ˇ˛ˇ˛ıˇ˛ˇÙˇ˘˛ˇˇˇˇ˛ˇˇ˛ˇ˛˛˛ˇÓˇˇ˛ˇˇ˛ˇ˛ˇ˛ˇÅÅÙˇ˛Ü˛ˇ˘ˇˇˇˇˇˇˇˇˇ˝ˇ˝ˇˇˇˇˆ…ˇ˝ˇˇ˛ˇıˇˇˇˇÙˇ˝ˇ˛ˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇÅÅıˇ˛ú˛ˇ˘ˇˇˇˇˇˇ˛ˇ˛ˇ˛ˇ˝ˇ˛ˇˇ˝ˇ˚…ˇ˝ˇˇ˛ˇ˛ˇˇˇ˛ˇˇˇˇˇ˛˛ˇ˛ˇ¸ˇ˝ˇˇˇˇˇˇˇˇˇ˛ˇÙˇˇˇˇˇˇˇˇÅÅÙˇ˛ñ˛ˇ˘ˇˇ˛ˇˇ˛˛ ˛ˇˇ˛ˇ˛ˇ˛ˇ˛ˇˆ…˚˛ˇ˝ˇ˛    ˇ˛ˇˇˇ˛
  1882. ˇˇˇˇˇ˚˛˛ˇ˛˛˛ˇˇˇˇ˛ˇ˛ˇ˛
  1883. ˇˇ˛ˇˇ˛ˇˇ˛˛ˇˇ˛ÅÅıˇ˛é˛ˇ˘ˇˇˇˇˇˇˇ˛ˇˇˇˇ˙ˇˇˆ…˚ˇ¸ˇˇˇˇˇˇ˛ˇˇ˝ˇˇ˘ˇ˛ˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇˇÅÅıˇ˛ê˛ˇ¯ˇˇ˛ˇˇ˛ˇˇ˛ˇ˝ˇˇ˛ˇˇ˘ˇˇ˝ˇ˚…¸˛ˇ˛˛ˇ˛ˇ˛ˇˇ˛ˇ˛ˇˇˇ˘ˇ˛˛ˇˇˇ˛ˇˇ˛ˇˇˇˇ˛ˇÙ